画像処理 その11

このエントリーをはてなブックマークに追加
940デフォルトの名無しさん:2009/07/02(木) 12:23:10
バグってるんじゃないの?
それぞれ単体ではちゃんと変換できるの?
ちゃんと変換を合成できてるの?
941デフォルトの名無しさん:2009/07/02(木) 12:32:52
>>940
単体では全然問題ないです
回転の中心がどうしても変えられない…
942デフォルトの名無しさん:2009/07/02(木) 14:53:13
>>941
どういうプログラム組んでいるのか知らないが回転の中心は
あなたが決めるもんじゃないの
943デフォルトの名無しさん:2009/07/02(木) 15:47:04
回転行列の問題
944デフォルトの名無しさん:2009/07/02(木) 18:10:07
色々やってみたのですがうまくいかなかったです

窓の方の縦横でループしてるんですが
こんな感じでかいてます

a = -sin() * (y-窓高さ/2) + cos() * (x-窓幅/2) + 窓幅/2;
b = cos() * (y-窓高さ/2) + sin() * (x-窓幅/2) + 窓高さ/2;
a += x移動;
b += y移動;
(x , y) = (a , b)
これだと、窓の中心で回転するんですが移動も回転してしまいます

a = -sin() * (y移動+y-窓高さ/2) + cos() * (x移動+x-窓幅/2) + 窓幅/2;
b = cos() * (y移動+y-窓高さ/2) + sin() * (x移動+x-窓幅/2) + 窓高さ/2;
(x , y) = (a , b)
これだと移動はちゃんと出来るんですが回転の中心が画像の中心になってしまいます
945デフォルトの名無しさん:2009/07/02(木) 23:18:44
先に平行移動した時点で回転中心にしたい点がどこにあるかはわかるはずなので、そこで回転させるようにループを組む
もしくは回転によってx移動、y移動も向きを変えるようにする
946デフォルトの名無しさん:2009/07/03(金) 01:11:45
移動と回転をいっぺんにやろうとしないで、まず平行移動させてから、回転。
一つ一つの結果を確認しながら進める。
947デフォルトの名無しさん:2009/07/03(金) 01:13:50
そもそもなんで回転とか平行移動とか基本からやるの?勉強のため?
OpenCVなりOpenGLなりで一発じゃん。
948デフォルトの名無しさん:2009/07/03(金) 03:59:23
やっぱり結果は変わらずでした
一つずつやってみて、移動は問題ありませんでした
その移動後の座標をそのまま回転させると
画像左上中心固定ですが移動も問題ありませんでした。

やっぱり言われたとおり回転の中心なのですが
画像中心はすぐ出来ても窓枠中心がどうしてもわかりません…

(画像の大きさ/2)ずらせば画像の中心になるので
(画像の大きさ/2-移動した分)だけずらして計算すれば
いいような気がするのですが移動も一緒に回転したような動きになってしまうんです
949デフォルトの名無しさん:2009/07/03(金) 04:36:34
自分がやってる事がわかってないんじゃないか。

>(画像の大きさ/2-移動した分)だけずらして計算すれば
この作業をやったときに問題になるのは、本当に狙ったところが回転中心になっているか?であって

>移動も一緒に回転したような動きになってしまうんです
平行移動への影響は関係ない。それは平行移動する前に回転させるか、平行移動したあとに回転させたかというだけの話。

何が問題で何を直すべきなのかじっくり考えた方がいい。意味もわからず出来ただけじゃ無駄だし。
950デフォルトの名無しさん:2009/07/03(金) 09:15:57
もしかして、画像を回転すると座標軸も一緒に回転するはずと思い込んでいる?
951デフォルトの名無しさん:2009/07/03(金) 10:21:23
ああ、コード見て一体何がやりたんじゃ?って思ってたけど、やっと何がやりたいのか把握したwww
座標変換理解してないんだな。
952デフォルトの名無しさん:2009/07/03(金) 10:30:08
どのスレに投稿して良いか判りませんでしたので、ここで質問させてください。
グラデーションの描画を行う際のアルゴリズムについてです。

p0からp3の4頂点の正方形があり、

p0-p1
|    |
p2-p3

と並んでいるとします。

アルゴリズム1
○p0からp2へのグラデーションを配列に作成するColArray0
○p1からp3へのグラデーションを配列に作成するColArray1
○ColArray0[ n ]からColArray1[ n ]へのグラデーションを描画する

アルゴリズム2
○描画する点、pを決定する(矩形内)
○そのpと各頂点を結ぶと出来る直線を対角線とした長方形を作成する
○長方形の面積を計算し比を計算する
○比に合わせて各頂点の色を混合する
○混合結果を描画する

上記2つのアルゴリズム名はわかりませんが、
もし名前がございましたらお教えいただけますでしょうか。

また、他にもアルゴリズムがございましたら
紹介していただけたらうれしいです。
953デフォルトの名無しさん:2009/07/03(金) 14:59:52
単なる線形補間じゃないのか?
954デフォルトの名無しさん:2009/07/03(金) 15:01:08
ガマット変換でもやりたいの?
955952:2009/07/03(金) 15:13:12
>>953
1についてはやっぱ意線形補完ですよね。
2は何補完って言われてるのかな・・・。
956953:2009/07/03(金) 15:23:37
バイリニア(双線形)補間じゃない?
これは縦横の比率をかんがえるんだけど面積は縦×横で結局同じことだろうから。
957デフォルトの名無しさん:2009/07/03(金) 15:25:24
画像の拡大がしたいんですね?
958デフォルトの名無しさん:2009/07/03(金) 15:29:24
補間なら他にもたくさんあるぞ。
画像の拡大縮小でよく使われるのが
ニアレストネイバー法(nearest neighbor)
バイリニア法(bi-linear interpolation)
バイキュービック法(bi-cubic convolution)

下ほど画質がいいが処理に時間がかかる。
959デフォルトの名無しさん:2009/07/03(金) 15:44:19
960デフォルトの名無しさん:2009/07/03(金) 15:55:56
Lanczos補間はLanczosさんが考えたsinc関数で補完する方法。
sincはsin(x)をxで割ったもの。
961デフォルトの名無しさん:2009/07/03(金) 20:29:00
>>952
グラデーションをどう決定するかが核なんだから、
1だけではアルゴリズムとは言えない。
962デフォルトの名無しさん:2009/07/04(土) 10:22:37
画像の回転と移動やっと出来ました
まだ理解不足が多いですが視点回転後に座標そのまま足しちゃってたんですね
>>945で言われた通り回転によって移動量も回転させて向きを変えて足したら
思い通りに出来ましたありがとうございます
963デフォルトの名無しさん:2009/07/04(土) 14:34:49
OPENCV初心者なのですが
画像を20度ずつ回転させて、20度ごとにテンプレートマッチングを360度まで行うのを
一つのプログラムにしたいのですが

回転プログラムとマッチングプログラムをどう合わせれば可能ですか?
964デフォルトの名無しさん:2009/07/04(土) 15:43:28
どうも何も、自分で言ってる通りなんじゃないの?
20度ずつ回転させて、その都度テンプレートマッチングするだけじゃないのか。
965デフォルトの名無しさん:2009/07/04(土) 15:50:32
そこはもう、自分の頭で考えるしかない。
966デフォルトの名無しさん:2009/07/04(土) 18:19:08
マルチか?

【Intel】OpenCV総合スレ【画像処理】2
http://pc12.2ch.net/test/read.cgi/tech/1230511656/326-
967デフォルトの名無しさん:2009/07/04(土) 20:35:47
OpenCVスレッドの回答に対しての返事もしないでこっちに投稿してくるとは。。。
968デフォルトの名無しさん:2009/07/05(日) 10:42:54
YUV色空間について勉強してるときに(YUV)'色空間ってのが出てきたんだけど
YUVと(YUV)'ってどう違うんですか?
969デフォルトの名無しさん:2009/07/05(日) 12:16:03
その記事はどこにあるの?
970デフォルトの名無しさん:2009/07/05(日) 14:35:19
>>969
>>968に対するレスだと思っていいのかな?
記事というか講義で配られた英文資料(原典不明)なんだけど
YUV色空間の項で(YUV)'ってのが出てきて
以下のような線形相関がRGBシステムとの間にあると書いてた
        (1/3  1/2 -1/2√3)
(Y,U,V)'=(R,G,B)(1/3   0  1/√3)
        (1/3 -1/2 -1/2√3)

一番右は3*3の行列ずれてたらごめん
971デフォルトの名無しさん:2009/07/06(月) 02:45:00
普通YUVっつうとこれだけどな。
Y = 0.299R + 0.587G + 0.114B
U = -0.169R - 0.331G + 0.500B
V = 0.500R - 0.419G - 0.081B

>>970の3*3行列は、RGB空間をYUV空間に射影するときの回転行列だろうか?
http://dtv.sakura.ne.jp/contents1/011.png
972デフォルトの名無しさん:2009/07/08(水) 18:39:01
exifに関する質問はここでいいでしょうか?
ここじゃないような気もするんだけど、適当なスレが見つからないので。
973デフォルトの名無しさん:2009/07/08(水) 19:13:20
974デフォルトの名無しさん:2009/07/09(木) 09:02:26
テンプレ
誰か次スレ立てて下さい


画像処理プログラミングについて質問、議論を行うスレッドです
・画像処理について素人同士で大激論
・初学者の質問に対してやさしく(的を外れた)解答を与える
・その道の玄人も大歓迎

前スレ
画像処理 その11
http://pc12.2ch.net/test/read.cgi/tech/1222593978/
975デフォルトの名無しさん:2009/07/09(木) 09:53:25
立てました
画像処理 その12
http://pc12.2ch.net/test/read.cgi/tech/1247100724/
976デフォルトの名無しさん:2009/07/12(日) 04:07:42
梅揚げ
977デフォルトの名無しさん:2009/07/12(日) 11:41:05
エッジェルの実装に関するサンプルソースが欲しい。
978デフォルトの名無しさん:2009/07/21(火) 10:30:31
age
979デフォルトの名無しさん:2009/07/21(火) 15:12:35
書き込んでさっさと落とす
980デフォルトの名無しさん:2009/07/21(火) 15:20:04
落ちろー
981デフォルトの名無しさん:2009/07/21(火) 17:21:49
当たらなければどうということはない
982デフォルトの名無しさん:2009/07/21(火) 23:18:46
ビットマップ化したフォントの縁取りをしたいんだけど
輪郭抽出して内外判定して、外側に広げるしかないかな?
983デフォルトの名無しさん:2009/07/22(水) 00:14:00
丁寧な奴だな
984デフォルトの名無しさん:2009/07/22(水) 01:25:29
上下左右に±1dotずつずらして4重打したあと中心を元のフォントでくりぬく
985デフォルトの名無しさん:2009/07/22(水) 01:37:34
ぼかして切り上げ
986デフォルトの名無しさん:2009/07/22(水) 10:44:13
膨張してxor
987デフォルトの名無しさん:2009/07/22(水) 11:42:41
>>984
その手法だと、縁色と文字色の間がガタガタになる。
988デフォルトの名無しさん:2009/07/22(水) 13:11:33
gimp OpenCVなどの便利画像処理ソフトリンク集
どこかにないでしょうか
989デフォルトの名無しさん
プラグインを作りたいの?