1 :
デフォルトの名無しさん :
2007/12/16(日) 08:03:02
8bit インデックスカラー画像を、さらに可逆圧縮する方法は無いでしょうか? 汎用的な圧縮アルゴリズム以外で。
ある
6 :
デフォルトの名無しさん :2007/12/16(日) 15:20:21
我蔵
>>2 汎用でないのが良いなら俺俺圧縮でいいじゃん
8 :
デフォルトの名無しさん :2007/12/19(水) 20:37:48
射影変換の8個の係数は最小2乗法で求めるってよく本に書いてあるけど、 どうやって求めればいいのでしょう? 線形の式じゃないし・・・ 求め方よろしくお願いします。
9 :
8 :2007/12/19(水) 20:43:19
式は u=((a*x)+(b*y)+c)/((d*x)+(e*y)+1) v=((d*x)+(e*y)+f)/((d*x)+(e*y)+1)
そりゃあ非線形最小二乗法(Levenberg-Marquardt法とか)で。 MATLABはデフォルトだと違うアルゴリズムだったような気がするけど忘れちった。
11 :
デフォルトの名無しさん :2007/12/20(木) 06:08:03
シンプレックス法じゃなかったっけ?
13 :
デフォルトの名無しさん :2007/12/21(金) 07:04:23
自分は画像処理初心者なんですが、あと、一ヶ月くらいで 何か卒業研究をしなければいけないんです。 何かいいテーマとかありませんんか?
14 :
デフォルトの名無しさん :2007/12/21(金) 07:18:29
>>13 画像処理なんて選ばないほうがいいとマジレス
16 :
デフォルトの名無しさん :2007/12/21(金) 08:00:17
関係者トリップ情報 (偽者に注意) 2007/12/19(水) ID:E8Oequ3N0 kz氏 packagedの人 ◆BH0nmndX96 ID:1Xu1qks40 Lividusの人 andromeca ◆CPNbxm3EIg ID:vAwHZgjx0 メルトの人 ID:oSQ+FDNN0 えんじぇぅの人◆scM/nI4V.Y ID:keBCp+3K0 鼻毛P(Frogging Dance) ID:oMYHiaXq0 タイムリミットの人◆YYTZgV0LJk 2007/12/20(木) ID:P7leIPBs0 鼻毛P ◆MP8vzeiN.w ID:P7leIPBs0 鼻毛P ◆xUn5MII0Bg トリ修正 ID:3EXHazn00 melody...の人 mikuru396 ◆cFNknPxyis ID:l4i4oFd60 ● 乳酸菌 ◆yHPARVlesM ID:kxFiBz8Z0 kz氏 packagedの人 kz ◆BH0nmndX96 ID:YUkCq5Ml0 歌姫の人 azuma ◆mf21aXMzrg ID:HRmiQ+iM0 ツンデレの人 ←みんなの嫁 2007/12/21(金) ID:qexz2Bij0 SOSOSO ◆0g8QI5iRQk ID:91k/f2Ze0 kz ◆BH0nmndX96 ID:imXF3cx20 azuma ◆mf21aXMzrg ID:2AjhCl7I0 ◆scM/nI4V.Y ID:rvuHxWqG0 鼻毛P ◆xUn5MII0Bg
17 :
デフォルトの名無しさん :2007/12/21(金) 08:01:27
>>12 2枚の画像の点の対応からカメラのパラメータを復元する方法はあって、
Eight-Point Algorithmとかいうものをつかって、8点が決まるとエピポーラ幾何のFundamental Matrixが求まるんだそうだ。
これを使えば、はじめに任意の8点でキャリブレーションを行っておければ、カメラの位置は適当でよくて、
あとはエピポーラ幾何でわかったカメラパラメータを用いて
2つのカメラからレイを飛ばして交点が元の点ってことになるような気がするけどダメですかね。
画像処理でのアセンブラ化は中毒性があるな。 めちゃくちゃ処理速度が向上して笑いが止まらない。 SIMD万歳!
>>19 よっぽどしょぼいコンパイラを使っていたんですね。
>>20 そうなんかな?
Visual C++ 2005 Proで最大輝度でグレースケールする例だと
Cだと4.6ms、ASMだと2.2msぐらいだからかなり改善したと思うけど
画像ソースは、1920x1200、24Bitビットマップ画像
CPUはCore2Dure 6600/メモリ 2GB
同じ画像ソースで3×3Sobelでエッジ抽出を求める処理で、
2.8msだからかなり早いはずだけど、遅いの?
(1920x1200 グレースケール後8bit画像から)
「アセンブラを使って速くなった」→「コンパイラのコードが遅かった」ってことじゃないの? 実際、CコンパイラだってSIMD演算位すると思うのだけど。
SIMD 使うかはオプション次第じゃないの
最初のCoreに引っ張られたんだろうけどDureてw
計算量のオーダーが変わったり1桁以上速くなるのでなければ あまり気にしないことにした
JITまんせー
>>21 1920x1200 とはいえ、E6600 でグレスケに2.2msもかかるか?
式は 0.298912 * R + 0.586611 * G + 0.114478 * B ?
精度はどのくらいでやってるの?
>>27 最大輝度だから式は 0.298912 * R + 0.586611 * G + 0.114478 * Bではなく
bin = ((R > G) ? (R) : (G));
bin = ((B > bin) ? (B) : (bin));
dst = bin
ってな感じで計算している。
夜頃までに上記式での比較をやってみる。
あと、もう少し比較命令を改善してみるよ。
やっぱり遅いのか…orz
ICC最強
iccってそんなに良い? 前gcc4.0とicc9.0でコンパイル出来るようにしてたけど10%弱しか改善しなかった
bin = ((R < G) - 1 & R - G) + G; bin = ((bin < B) - 1 & bin - B) + B;
>>30 巧くsimd使える状況にはまればね。
gccに較べて改善できないときは、それでもまだintrinsicを使うと言う手も残っているから、
自前でアセンブリコードを書く機会は最早殆どなくなってしまったよ。
ICC使ってみたけど、期待したほど速くないぞ?
Intel といえば ipp (integrated performance primitives) なら速いんじゃない? 誰か使ってる人いる?
まぁ、iccや最適化の話やアセンブラの話はスレ違いなんで該当スレへ。
SIMDっつーても流石に数百個単位の並列動作する石だと もう言語以前にアルゴリズムが凄い事に。 というかバス速度の方がよっぽどボトルネックな罠。
37 :
デフォルトの名無しさん :2007/12/23(日) 12:30:24
>>2 パレット値に置き換えた時点で、画像アルゴリズムの範疇ではなく、
記号処理の範疇だと思うが。
39 :
12 :2007/12/23(日) 16:06:28
>>18 亀レスすみません
非常に重要な指針を教えてくれてありがとう!
詳しくはこれから調べようと思いますが
>>18 を読んでいるとそれで行けるような気がします!
未知のことだらけで遣り甲斐があります!
40 :
デフォルトの名無しさん :2007/12/23(日) 16:07:27
MagickWandの構造体、MagickWand型の定義について教えてください。 ヘッダファイルをあさくってもどこにも定義されて無く困っています。
>あさくっても ??? 例えばcc -Eしてみたら?
「あさくって」は方言「あさくる」の活用形です。
43 :
デフォルトの名無しさん :2007/12/23(日) 21:10:50
>>41 >例えばcc -Eしてみたら?
それはもうしたんだけれど、
ないんだよぅ。
知らんけど opaque な型なんじゃないの ライブラリのソース当たってみるとか
wand/MagickWand.h wand/magick-wand-private.h
46 :
デフォルトの名無しさん :2007/12/23(日) 22:12:06
明日の朝、食ってきます...
47 :
デフォルトの名無しさん :2007/12/23(日) 23:09:13
MagickWand日本語の情報少なすぎじゃね? phpのモジュールの情報(しかもコンパイル方法)しか引っかからん。
48 :
デフォルトの名無しさん :2007/12/23(日) 23:14:13
>>42 >「あさくって」は方言「あさくる」の活用形です。
あさくるって九州の方言だったの!
生まれて初めて知った。
っーか、今北海道に住んでるから、突っ込んでくれよ、道産子。
お前ら俺の話真面目に聞いてないんだな!
別に画像処理アルゴリズムの実装くらいはこのスレで扱ってもいいと思うんだけどなあ
40年生きてきて、「あさくる」ってことばは初めて知った。
「漁る」って意味でいいのかな?
>>49 同意。但し、何の前提もなしにSIMDがどうのはスレ違いだと思う。
いじる、いじくる と似ている気がした。
>>51 いじくる、は俗語表現だが、あさくる、は単なる方言。
ちなみにいじくるの語源は、何事にも本気にならずあそびで触ってかっこつけるところから、
easy cool がなまったもの。もちろんあさくるは、朝が来るまで探し回るところからだ。
これ豆鉄砲知識な。
って、ここ画像処理板だよ・・・ OTZスマソ
Ω ΩΩ
ちょっとヒマっぽいので前から懸案の緑かぶり補正を自作のソフトに機能追加 しようと思うんだけど、各ピクセルにマゼンタを足すだけでは、絵が白っぽく なりますよね。 足す前の明度を覚えて置いて足した後その明度に戻すとかするんでしょうか。 どの程度のマゼンタの値がいいかってのも予め求められるんでしょうか。 それとも、スライダ操作可能にして自分で見ながらやるんでしょうか。
YCrCbで補正すればいいんじゃない? 補正量もフルオートでやるなら、全てのピクセルの平均が 無彩色になるようにするとか。
写真系の板で訊けよ
59 :
56 :2007/12/26(水) 15:10:48
>>57-58 レス感謝。
YCrCb 補正ですか、今これは組み込んであるんで試して見ます。
写真系の板で、アルゴリズムやコーディングの話は無理かと。
もし2チャンネルに限らず、良い板があるならご紹介を。外国語は
英語までで。
せいぜい、カメラのセットを変えろとか、フィルタ付けろとか、
Photoshop 買えとか使えとかになる気がする。
(フィルタも銀塩時代の 52mm なら2種類もあるんだが)
Photoshop 買え
>>56 要するにAWBだな。
アルゴリズムはいろいろあるけど、
>>57 のように画像全体の平均がグレーになるようにするってのが最も単純な方法。
YCCじゃなくても、Rの平均、Gの平均、Bの平均が同じ値になるように補正すればいい。
もっと賢いアルゴリズムについては、デジカメ板あたりにプロフェッショナルがいそうではある。
>>61 ありがとうございます。だんだん様子が見えるようです。
世の中には、緑の成分を薄めるというのもありますね。
>>60 絶対アプリは買わない方針にしている。
コンパイラも買わずに済ませようとしているんだが、VC++ 2008 EE の登録が
なぜか出来ない。年明けくらいまでにやっつつけて、最悪2月購入か。
要するにケチなわけですね
>>63 それ以前に、その姿勢でなぜOSがwindowsなのかと。
Windows無しのPCなんか買っても節約にならんから。
OS の値段だけじゃないだろ
>>64 OS 止めるとセットじゃなくなって、高くなるんよ。
>>63 早く言えばそう。しかし高額のソフト買っても全部の機能は使い切れないし、
フリーソフトは、自分ならこうするってのが出来ない。
大口をたたくと、PCは消費財ではあるが、生産財でもある。ソフト自作は
その機能を活用していることである。成果が社会的に有益かどうかの問題
が残るけど。
>>67 64が言ってるのは、その姿勢でなぜLinuxじゃなくてwindowsなのかってことじゃないの。
同じ構成でLinuxセットの方が1万以上安い製品は普通にあるが。
開発ツールも完全に無料でそろうのに。
Windowsでも開発ツールは無料で揃うよ。 というか、OSなんてどうでもいいだろ。画像処理の話をしよう。
開発ツールだけじゃなくてライブラリやアプリも無料でそろう しかもソース付きだから、自分ならこうするってのも出来ちゃう VC++ 2008 EE の登録が何故か出来ないなんて事にもならない たったそれだけだけどね
画像処理の強い大学ってどこ? 東大?東工大?
コロンビア大学
73 :
デフォルトの名無しさん :2007/12/28(金) 03:05:14
大学より研究室見た方がいい
少しかじった程度だけど 顔認識技術はむしろ漫画みたいなほうがやりやすいはず。 漫画は顔ってわかるようにラインがきっちりしてるから特徴が出やすい。間違ってたらスマン。
76 :
sage :2007/12/28(金) 07:17:29
ふーん、じゃあ、検索エンジン作るのは簡単なのかな? でも、マンガの場合、人間と違って目の色が違ったり、鼻がなかったり、口がなかったりするけれど、 そんなのあんまり関係ないのかな?
頭に尻があったりするしな
>>74 パターン認識のプロジェクトやりなさいって日本の修士生になげると
漫画の作者認識をやるやつが必ず一人はいる。
>>73 画像処理の研究したくてどこの大学院行くか迷ってます。
医療系の人間なので、「画像処理ならココだ!」的な大学が分からないので聞いてみました。
将来的に企業の研究所とかで医療画像の研究開発とかしたいです。
>>70 >>69 氏のように画像処理からずれるとお叱りがあるんで短くするが、
実は、Xp機は Linux との dual にしてあり、今度の Vista 機も HDD に
パーティション切って貰ってある。Xp 機に 68 Mac エミュレータの
Basilisk II を入れて、古いSymantec C++ も動くが、なんせネット関係
で Jave エラー頻発になって、使わなくなった。
Linux 向けのソフトのソースを随分使わせてもらっている。実は自作ソフト
の半分は、ソース解析と言える位。
81 :
sage :2007/12/28(金) 09:24:49
>>78 へぇ、じゃあ意外とたいしたことでもないのかな。
でも、その割には似たようなことやってるサイトって見ないけれど。
下らないから投げちゃうのかな。成果として残せばよいのに。
ちなみに、Comitionって未来あると思う?
>>81 おまえパターン認識やったこと無いのか?
すっげー単純なのから高度なのまでいろいろあるんだぞ。
同じ漫画作者認識にしたって高度にはなりうる。
>>81 論文を読みなちゃい。
ウェブページなんていくらでも情報があるようでその実なんの情報もないよ
>>82 ,83
ええっ。
いや、論文読め言われても、おれただの素人だし。
ふーん、じゃぁ成功はComitionの作者のがんばり次第なのかな。
外国にはこんなの無いから、イラスト関係のポータルサイトとして成長できるように頑張ってほしいね。
たぶん消えると思うけれど。
85 :
デフォルトの名無しさん :2007/12/29(土) 02:48:05
ImageMagickを軽くする方法ってないかね? 10万ファイルのサイズ変換に時間がかかりすぎる。
あんなもん使ってるのが悪い
87 :
デフォルトの名無しさん :2007/12/29(土) 04:21:03
じゃあ最速の画像変換ソフトって何かね? 商用でもいいので教えてくれ。
>>84 目の自動切り出しに独自のアルゴリズムが必要だから、そこ次第。
現実の人の顔ならともかく、漫画絵のTゾーンなんて普遍的な検出は不可能そうだし。
従来の検出手法はあまり役に立たないだろうことは、容易に想像できる。
もっとも、/.みてると、手で切り出しても全然精度はないみたいだけどね。
輝度って何ですか?
ググレカス
URLエンコードぐらいしようぜ
94 :
デフォルトの名無しさん :2007/12/29(土) 15:03:12
二ヶ月ほど前に撮った写真です
場所はバトルロワイヤルの撮影地にもなった
軍艦島での一枚です。
http://www.uploda.net/cgi/uploader1/index.php?file_id=0000278909.bmp 撮影し現像した物を
心霊写真がないかな〜っと面白半分で探していると
偶然にも一枚だけ物凄い写真が在りました
最初に見えたのは右下の子供の様な顔です
左にはボーっと立ち尽くし
こっちを見ている子供がうっすらと写っています
上部には青白い叫び顔があります
それだけではありません
探せば探すほど気持ち悪い顔があるのです
私は現在で約30ほどの顔を見つけました、全てこっちを見ています
探せば探すほどあまりにも出てくるので
気持ち悪くなり頭が痛くなりました
この写真ですが、ある友人に貸した所
夜に1時間程笑い声の様なものが聞こえてかなり
怖かったらしいです・・・
霊感がある方はぜひ鑑定をお願い致します。
因みに、スキャナーで高画質でスキャンした上で
見易いように画質調整をしています
ですのでファイルサイズが9MBにもなります・・・
画像処理ってどういうところで使われているの? gimpみたいなソフトウェアを作るのは画像処理の中に入る?
gimpの各処理については画像処理に入るだろうけど。
画像処理って何なのさ? 漠然としてて分かりずらい。 SIGGRAPHみたいなのも無いし。
コンピュータビジョンとか
100 :
デフォルトの名無しさん :2008/01/02(水) 21:57:48
テレビなんか画像処理の固まりだよ
脳はちょっと違うか
デジタル画像処理だったら 画像ファイルとか動画ファイルとか使ってなんかやってたら全部画像処理でおk!
食っていけない研究No1
105 :
デフォルトの名無しさん :2008/01/03(木) 20:24:13
OpenCVのライブラリにあるcvFindFundamentalMatrix使って 2つの画像間のエピポーラを求めようとしてるんですけど この場合って各画像の特徴点はどうやってもとめるのが一番いんでしょうか?
医療画像処理が強い研究室ってどこだか分かりますか? あと、工学部とかではどんな画像処理の教科書を使ってるんですか?知ってたら教えてください。
どいつもこいつもageるなよ
>>105 そりゃ用途によるだろうけど、お手軽なのはチェスボードのやつかな
>>105 興味あるので
上手くいったら教えてくださいな
112 :
デフォルトの名無しさん :2008/01/07(月) 01:24:03
パターン認識を利用したビジネスって 大掛かりなものや研究開発しか思いつかないのですが 中小企業にもお勧めできる使い方ってなにかあるでしょうか?
>>112 なんであんたの金儲けの手助けせにゃならんの?
>>114 いいじゃん別に。
嫌なら答えなくていいじゃん。
もしかして、他の人への「答えるな」という意思表示ですか?
営業妨害ですよ。
116 :
デフォルトの名無しさん :2008/01/07(月) 01:44:14
>>115 自分で売り方を思いつけず、2chで聞かなきゃならないとは、
なんともお粗末な営業ですなぁ。
情報収集はあらゆるところで行うものですよ。
君んとこで作れる程低レベルなものねぇ・・・ 無いんじゃね
釣られすぎw
ム板はおもろいなぁw 生真面目にどんなレスにも答えてくれる 他の板じゃ余裕でスルーするようなレスでもなw
でしょでしょ
CG系のこともここで聞いていいんだろうか…。 スポットライトのライティング計算ってどうやるの? 調べても、線光源とか点光源くらいしか出てこない。
ここじゃない
CG板
面光源ってなかったっけ
>>118 「使い方」って聞いているだろうが。
ものを作る必要なんか無い。
パターン認識の手法を考えるやつの儲けを1とすると
それを使ってアプリを作るやつが10儲けて
アプリを使うやつが100儲ける
指紋でも使って部屋の出入り管理でもすれば? 営業妨害っていうけどさ、おまいが振った話って守秘義務違反にあたらないか
>>129 守秘義務?
どこに企業秘密が書き込まれていますか?
また、それはどの企業の情報か推定できますか?
珍しく伸びていると思ったらw そろそろ画像処理の話しようぜ
133 :
デフォルトの名無しさん :2008/01/09(水) 06:34:19
>>131 最近の流行が知りたいです。
学会とか入ってないので。
NECのIMAPCARみたいなプロセッサや
FPGAを用いて複数の異なる画像処理を並列にやらせるのはまだ流行中ですか?
なにか面白い成果でてますか?
そういうハードウェアを持てない研究者や開発者のために
SIMDライクな計算方法で画像処理をやらせるのは進展あるのかしら?
やはりそういう研究開発でもOpenCV/IPPが主流なんでしょうか?
>>133 > FPGAを用いて複数の異なる画像処理を並列にやらせる
異なる処理だと同期が難しそう。ちなみにどういう応用例があるの?
gpgpuは昔からあるし最近じゃないね
136 :
デフォルトの名無しさん :2008/01/09(水) 18:43:19
137 :
デフォルトの名無しさん :2008/01/09(水) 23:00:38
ウィンドウズでMISTの設定をしようとしたけどチュートリアル読んでも 出来ませんでした。 あれはVB.NETが入っていないと出来ないのでしょうか? 今、VISUALC++6.0を使用して画像処理のプログラムを書いているの ですが、どのようにすればC++でMISTを使えるのかどなたか教えて頂けない でしょうか?
139 :
デフォルトの名無しさん :2008/01/10(木) 16:00:04
>>137 MISTはUbuntu上で使ってみただけだからわからんなぁ。
だったら黙ってろよ
142 :
デフォルトの名無しさん :2008/01/11(金) 01:19:17
MIST俺も導入しようとして挫折した経験あるわ〜 結局OPENCV使用したけど
143 :
デフォルトの名無しさん :2008/01/11(金) 15:39:32
だったら黙ってろよ
MISTなんてプロジェクトが有ったんだ! お手伝いしたいけれど、プログラムの面では全く役立たずだろうしなぁ。 っーかCしかできなくて、C++分かんないし。 ドキュメントくらいは書けるかなぁ。
MISTのメーリングリスト、名古屋大限定かよ。 排他的だなぁ。 俺の指導教官、名古屋大出てるけど駄目かな?
COEでたんまり金もらってこの程度かあ
なんじゃこりゃ ひとりで1年もかからずにできるような内容だな
OpenCVのように世界的に使われるものじゃないとそりゃクソだろ。 自分たちだけで使っていればフィードバックもないだろうし。
149 :
デフォルトの名無しさん :2008/01/13(日) 16:37:29
濃淡画像にインパルス埋め込んで拡散させてるって実験やってるのですが 実数だけじゃなくて複素も使うメリットを教えてもらえませんか? 劣化を抑えられるとか何とか
もうちと詳しくplz
151 :
半可通 :2008/01/13(日) 17:39:23
透過系を考えるときに、複素数の虚部が位相に相当するってことじゃなかったかな?
線形の制御理論一般に何でも使える考え方だな。 その辺、全部常微分方程式が素だから当然といえばそうか
お前ら頭良いな。 何言っているのかさっぱりだ。 たかがメモリの固まりに、そこまで深い意味が有るとは...
>>149 インパルスって、レーザーか何かを想定して広がりのある濃淡画像の
一点に1波長程度の長さの光を与えたって意味なの?
感圧センサの上で手を広げて 指の間をナイフでトントントンと・・・ 失敗したら血が拡散するんです
ひゃぁ お社様のたたりじゃ〜
感圧センサをナイフで突いちゃダメー!
158 :
149 :2008/01/14(月) 10:10:59
レスありがとうございます。 複素フーリエ→インパルス埋め込み→逆複素フーリエで元の 画像に戻るって感じのことやってます。 埋め込みは複素でも実数でも良いんですが、同じインパルスを 埋め込んで実数のみの変換よりも複素を利用した方が元の画像に 近くなるって事を示さないといけないんです…
だから、その「インパルス」とはなんなのだ。
どっかに適当に1を埋め込んでるんじゃね? 複素共役の話だけな気がする…
161 :
149 :2008/01/14(月) 11:30:39
説明不足ですみません。 実数だったら画像の一点の振幅値を増加させるって事です。 それを拡散させて原画像に近い画像を得るって実験です。
なんかの宿題か? つーか、 フーリエ変換→逆フーリエ変換 フーリエ変換→実数部のみ→逆フーリエ変換 の時点で当たり前に前者のほうがオリジナルに近い値に戻せるのだから、 一点増幅とか関係なくね?
163 :
149 :2008/01/14(月) 11:53:43
埋め込みが大事みたいなんです。 埋め込むインパルス強度は共通として実数よりも複素を 利用した方が原画像に近く(ピークSN比が大きく)なる手法を 証明しないといけないのです…
どうでもいいが、インパルスは「埋め込む」ものなのか? 畳み込みならわかるが・・・
もうこれ以上は無粋
余計なものを混ぜると原画像に近くなる? 何か変じゃね?
手領域だけを取り出して、 それをゲーム空間内に突っ込んで物理エンジンで動かしてるだけだろ。 難しくもなんともない
マリオじゃなくて、マリオっぽい奴を自作したのかな
ああ、なるへそ。 何となくイメージできた。 Webカメラから手画像だけ抽出して、 ゲーム画面の中でマウスポインタの代わりに、その手画像を貼付けているって 解釈で良いのかしら?
マウスポインタじゃなくてゲーム内の障害物として貼り付けてる
ありがとん。 最初見た時はスゲーって思ったけれど、 よく考えてみると、俺が深く考えすぎてたみたいね。 っーか、DirectX凄いね。 俺もWindowsプログラミング始めるべきかなぁ。
DirectXは関係ないだろう。 Webカメラの入力にDirectShow、画面の出力にDirectDrawか3Dは 使っていると思うが、肝の部分は全く関係ない。
>Webカメラの入力にDirectShow、画面の出力にDirectDrawか3Dは いやいや、LinuxとかBSDとかでコレを実現させるのが一苦労って意味で。
それはマジで言ってるの?
マジです
そうじゃないの? 外部ライブラリを使わずに、 >Webカメラの入力にDirectShow、画面の出力にDirectDrawか3Dは をBSDやLinuxで簡単に実現できる?
これってマリオらしきものも作ってんの? そこが一番苦労しそうなんだが
ゲームのプログラミングなんだから簡単だろ
>>166 >余計なものを混ぜると原画像に近くなる?
>何か変じゃね?
非常に笑った
今日一番笑ったかもしれん
まあ3時間しか経ってないからな
複素数理解してない奴としては普通の反応だよ 俺とかなー
笑い所がわからん マジで。
カメラの前に置いてある物の形を認識する方法ってどうやればいいの? 三角、四角、丸とかに分けれる程度でいいんだけど。 ググってもそこまで初歩的なのは見つからない…
>>184 初歩的じゃないよ。
割とむずかしい。
色分けがはっきりしているなら簡単。
186 :
デフォルトの名無しさん :2008/01/16(水) 02:26:53
コンピュータビジョンの技術使って、高度なレベルで 3Dアニメーションを機械に自動生成させることってできないかな、って考えてます。 例えば、動画と人型3Dモデルを用意して、動画に移ってる人物の動作を抽出し、 その動きを用意した3Dモデルに適用するっていう風に。 これができたら、シロートでも簡単に3Dモデルがぐりぐり動く動画エンターテイメントを 作り出せると思うんだ。最近、ニコニコとかでもアマチュアの映像制作が活発だし、 需要あるかなーと思うんだけど、似たようなこと考えてる人っているかな?
カラーとマーカーを使わないモーションキャプチャーと理解していいの?
初歩的で高度なレベル?
189 :
デフォルトの名無しさん :2008/01/16(水) 02:35:53
>187 そうなるのかな。 個人で用意できるカメラ1つで(特別な装置なしで)モーションキャプチャするのって 難しいのだろうか?
>>189 モーションキャプチャしたいなら、数台のカメラを使って、
いったんボクセルとして処理しなきゃいけないから、
クラスタが必要になるよ。
191 :
デフォルトの名無しさん :2008/01/16(水) 02:47:27
>190 ええと、つまり新しく撮る分にはいいけど、 既存の映画とかのアクションシーンとかから動きを実用レベルで 抽出するのは今の技術じゃ困難ってこと?
アイデア盗まれるから誰にも相談せず独りでやればいいよ
基礎理論と応用技術の区別もつかない奴が ちょっとやそっとで簡単に出来ると思ってるだろ
194 :
デフォルトの名無しさん :2008/01/16(水) 02:57:49
>192 あ、・・どもw とりあえず陳腐ではなさそうってことが分かったので真剣に情報集めてみるよ >193 おっしゃるとおり、現時点で完全に門外漢でございます。 3次元復元は大変困難な分野なのでしょう。お気に触ったのならごめんなさい。
>>186 よく見るよ。けっこう難しいよ。
これから研究としてやるにはいい分野かも。
でも、流石にもう追いつけない所に行かれてるかな?
196 :
デフォルトの名無しさん :2008/01/16(水) 03:08:54
>>196 へー、こんな物が有るんだ。
でも、儲かってなさそう。
>>196 これって、フレーム毎にマーキングしなくちゃいけないの?
CVの人とCGの人が組んで別々にがんばった方がよさそうだおね
>>198 aftereffectsのモーショントラッキングのようにある程度は追従するみたい。
でもアクション映画のような複雑な動きの入力はむりぽ。
みんな画像処理でどんなプログラム書いてる? もうかってる?
研究でやってるだけだし^^;
>>185 色分けがはっきりしてるってのは、背景が真っ白で物体に色がある場合とか?
その場合はどうすればいいの?
らくがき王国は分野としては 画像処理に入るの? それとも、3DCGなの?
>>149 今更だけど、フーリエ変換後にインパルス突っ込むっていうのは
ある周波数の成分を突っ込む話になるから
画像には結構影響が出ると思うんだが。
画像の特定の部分が破壊されても、
画面全体に分散してることになるので
破壊されにくいって意味じゃないのかな
でも、これだと
複素使うかどうかというより、フーリエ変換自体の特性の話か
てか電子透かしのための基礎実習みたいな感じ?
>>205 3DCGかと。
画像処理っていうのは、平面画像にある変換をかけてうんぬん
ってやつをいうんじゃないかな
ちょっと気になってるのはデジカメの顔フォーカス
単に肌色っぽい部分にフォーカスかけてるのかね?
PCで無制限に時間かけていいならわかるけど
デジカメみたいなポータブルで瞬間で判断しなきゃいけない
&複雑な処理もできないデバイスで
どうやって実装してるのか興味ある
顔認識とかだと解像度めいっぱいの画像に対してやらんでもいいから、適当に縮小した画像でやってんじゃね? 縮小してつぶれるほど小さい顔にはヒットする必要もないだろうし。
>>207 おお、それだ
確かに拡大や縮小はプレビューのためにもともと実装されているから
その実装ならできそうですな
俺もCMとか見て気になってた 顔検出ってテンプレートマッチングくらいしか知らんけど使ってんのかな? 笑ったら撮影するのとか横顔でも検出できる製品もあるよね
研究でやるのは構わないが、顔関係は特許でガチガチだからな
>>206 >画像処理っていうのは、平面画像にある変換をかけてうんぬん
ってやつをいうんじゃないかな
2Dの画像に対して変換をかけて、3Dモデルを作るんだから
画像処理じゃないの?
>>205 そういうのは、単一の分野に分類されるものじゃなくて
色んな分野の技術が組み合わさってできてるんだよ。
明らかに両方の分野またがってるな。 カツ丼は肉料理ですかご飯物ですかって言ってるようなもの。
ネットが使えるようになってから、そういう混成技術も調べられるようになって 嬉しい限り。理系大学生のブログならともかく、専門本は10年経っても出なかったりするからねw
RGBをHSVに変換する理由って、 0〜255 赤〜黄色 256〜511 黄色〜緑 512〜767 緑〜シアン 768〜1023 シアン〜青 1024〜1279 青〜マゼンダ 1280〜1535 マゼンダ〜赤 みたいな感じで、簡単に色の範囲?を抽出しやすくするため?
いいえ。
どっちが正しいのでしょうか?
>>215 RGBやCMYKより人間が感覚的に色を選びやすいから。
選びやすい色空間にはいろいろあるけど、コンピュータで処理するのが簡単って理由でHSVが使われる。
理由なんて色々あるべさ。RGBのままだと印刷できない色も表現できてしまうことだし。
色空間は、色域が問題にならないなら自分の都合で選択するといいよ。
Sobelフィルタとかを調べると3x3の例が多いのですが、 5x5、7x7のSobelフィルタってどうすればエッジ抽出が できるのでしょうか?
3x3と同じ要領
3x3が多いけど増やすと効果ある?
ある
このスレで合ってるのかよくわからないけど・・・ ゲームの会話ウィンドウなんかによくある、半透明のボックス。 背景が半分透けてる画像というか。ああいうのってどうやって作るの?
背景の画素を混ぜて描画する
>>227 windowsにはSetLayeredWindowAttributesというapiが用意されてる
ゲームでそんなAPI使わんだろ
>>227 そのまま「半透明 画像処理」とかでググれば見つかると思う。
プラットフォームや言語も入れて絞り込めば、すぐに見つかるんじゃない?
ゲームに出てくる女の子の服を半透明にするにはどうすればよろしいですか
背景の画素を混ぜて描画する
なんかワラタw
心霊写真かよ w
奇才あらわる
>>232 普通にプレイすれば脱いでくれるのに、半透明とはまたマニアックな…
多分泣きゲ
エロゲじゃなければ服を脱がないじゃないか。服が半透明になっても素肌が見えるわけじゃないんだぞ。
人間は賢い。 脳内補完すればNO問題 コンピュータで脳内補完はあと10年経ってもできる気がしねぇ。
それも膨大な学習時間を経てるからなせる技術。
マッチングの勉強している初心者ですが、 輝度の正規化っていうと画像内の最高/最低輝度を 0と255に割り当てて、その間の輝度値を線形変換するという事であってますでしょうか。 よろしくおながいします。
最高/最低なら、255/0だろ。常考 尤も、処理している間は1/0(実数値)で扱うことも多いが。
>>246 書き込んでから、気がつきました。スマソ
平均値で割ったり、引いたりするように書いてあるとこも
あるのですが、効果に差があるのでしょうか。
輝度の変化に強いマッチングを目指しているのですが…
勉強なら、いろいろやってみたら委員で内科医?
249 :
デフォルトの名無しさん :2008/01/26(土) 21:24:35
単眼カメラでカメラで取得した座標から実空間の座標を 求めたいんですけど、みなさんどうやってもとめてますか? あと、実空間と画像との誤差はどれくらいでるのか気になります。 よろしくお願いします。
マルチうぜえ
>>249 キャリブレするか特定の平面からしか無理じゃね?
無理じゃね?
>>254 A、Bがそれぞれどんな意味を持つのか説明しないと、
仮令AをBに変換できたとしても意味がないと思うぞ。
すみません。 デジカメの素材写真から高さマップを取りたいのです。 似たようなフィルタはいろいろあるのですが(ndiviaとか) 多くの場合、影が邪魔になります。 暗くなった影部分が凹部分と認識されてしまうのです。 何か方法はないかとおもったのですが たとえば便宜的にでも光の方向を指定してやって 影から高さを生成してやる、見たいな事をやりたいのです。 正確じゃなくてもある程度のディティールを取れるだけでも だいぶ作業の効率化が見込めると思えます。 これで説明が足りてると良いのですが。どうでしょうか?
卒業研究みたいな話だな
Bで表される山にどんな光を当てたらAみたいな影ができるんだろう・・・
円錐だな、実際の影の付き方じゃないから難解だが。
A->Bは無理だろ。 複雑な図形だったら一方向からのライティングだけではどうにもならないから、最低120度刻みで 3方向くらいの写真を使えば、画像の比較で床に落ちる影は消せるような気もする。
つか、Aの右上半分は真っ白にしか見えないんだけど、どうやったらここの形状を求められるの?
デジカメ素材に白飛びもあるという前提なのかね
うーん、Bの山って、明度でグラフにすると円錐からは随分離れた傾斜になっているんだけど。 どう見てもAみたいな直線の影ができるように見えない。 # jpgにした所為って可能性はあるけど。
800*600の画像があったとします。 逆透視変換のためにその画像を上辺900、下辺800、高さ1000の等脚台形に変換したいのですが、 .N簡単な方法があれば教えていただきたいです。 OpenCVのアフィン変換とかになるんですかねやっぱり
266 :
265 :2008/01/27(日) 19:18:39
誤爆しました。 開発環境がC#2008なので、まずC#スレで聞いてきます。
267 :
254 :2008/01/27(日) 20:01:25
レスありがとうございます。
ああ、皆さん、すいません、Aの画像とBの画像は手でつくったので必ずしも
一致するわけではないです。
こんな感じの処理がしたい、というサンプルです。
>>258 卒制ではないです。
うちのデザイナが高さマップをある程度簡単に作れる奴が欲しいと
のたまいやがるのです。
>>261 写真は一枚が多いですね。
しかも屋外の自然光が多い場合もあります。
あとフラッシュの影とかもある場合が多いです。
>>262 >>263 その辺りは別の処理をしてなんとかします。
必ずしも一回の処理で全てをまかなおうとは思っていません。
最悪手で描くことも想定しています。
>>264 一応線形の円グラデなので多分綺麗な円錐になると思います。
そもそもAの図は、グラデーションが付くのは右上で 左下は影になるのが普通だと思うが。 影の中に陰はできないよ。
そりゃー平均顔を作れれば精度はあがるだろうけど、 どうやってその平均顔を作るための大量データを query の度に得るんだ?
>>270 そりゃ研究室のみんなに頼むに決まってるだろ。
後輩とか含めて20人分ぐらい集まるんじゃね?
272 :
264 :2008/01/27(日) 21:48:53
>>267 >一応線形の円グラデなので多分綺麗な円錐になると思います。
だからなってねぇってばよ。
それはさておき、実際にAからBが得られた訳じゃないということは判った。
英国秘密情報部が集めて来ます
>>270 もしかしたら出入国管理くらいには使われるかもな
>>271 おまえはちゃんとリンク先を読め
>デビッド・ベッカム、クリント・イーストウッド、ショーン・コネリー、ビル・クリントンなどの著名人の写真を照合したところ、本人だと正しく判定されたのは半数のみだった。ところが彼らの平均的なイメージ写真をアップすると、識別度はほぼ100%に上昇したという。
つまり、クエリが平均顔でないといけない。
つまり、出入国の度にいろいろな光源の元やノイズのもとで写真を複数とって
平均顔作って入力とするってことだろ?どんだけぇ〜
>>275 平均顔なんて10人ぐらいあれば十分なんだよ。
10・・・人?
読解力無さ杉wwwwwwwwwwwwwwwww
>>276 ベッカムを10人集めるのは大変だと思うぞ
すまん、リンク先読んでなかった 顔認証で簡易鍵とかの用途ならできるんじゃね?
>>280 カメラの前で、
「少し右を向いて下さい」
「少し下を向いて下さい」
とかやるのか? 指紋や掌紋や網膜認証の方が早いし確実な気がする。
普通に考えて、ずっと映像を取得している監視カメラの映像から平均顔を
作成して、それをキーに検索するってことだろうね。
>>254 面白い課題だなぁ。B→Aはできるだろうけど…
閃いた
1.手当たり次第にあらゆるBを作る
2. 大量のBから大量のA的画像を作る
3. 大量のA的画像とAと比較して大体似たような感じなら「たぶんこんな形じゃね?」と
そんな冗談を書いてみるテスト
形状が限られているなら…例えば円錐しか存在しないという仮定ができるなら
底辺の円のサイズ(中心と半径)と、影の頂点をユーザがマウスクリックで指定して(3回クリック)
てなツールを作って作業効率向上ができそうだけど、でもそれって画像処理じゃないな…
底円を求める処理と、影の頂点を求める処理を別にして、得られた2つの情報から類推して…とか…
Aの画像なら、黒い部分で三角形ができるから
そのうちの2つの頂点が低円の直径、かつ、円の中心点を通る直線で、残りの1点が影の頂点
と類推できそうな気もするけど、リアルワールドを撮影した場合に実際Aのような画像になるかどうかは判らないし
例えば航空写真を持ち込んできた場合は自動化は無理な気配
283 :
282 :2008/01/28(月) 08:14:51
パターン認識
>>254 この種の問題は "shape from shading" と呼ばれる一大研究分野だよ。
ググればいっぱい論文が見つかると思う。
286 :
254 :2008/01/29(火) 02:36:00
レスありがとうございます!
>>282 残念ながら撮る対象は限定されていないのです。
ソースはデジカメだったり航空写真とかだったりが多いのではないかと思います。
画像はめっさわかりやすいですね!
それをデプスでレンダリングしていただけるとBのような画像になります。
>>285 ググッて見ました。
火星地表面とか宇宙とか・・・テラ壮大です。
でも多分これですね。
殆ど英文なのでさっぱりわかりませんが
ちょっくらがんばって読んでみます。
>>285 オラも勉強になりました
「陰影からの形状復元」でググると色々出てきますな
これは面白い…
289 :
デフォルトの名無しさん :2008/01/31(木) 15:44:39
RGB8各ビットのカラー画像を8ビットグレースケール画像に減色する方法って何がありますか?
足し算と割り算でおっけ
( R + G + B ) / 3
293 :
sage :2008/01/31(木) 17:32:57
>290 >291 >292 ありがとうございます。参考にしてみます。
sage間違えたw
296 :
デフォルトの名無しさん :2008/02/08(金) 18:41:40
おききしたいことがあります。非常に安価な(3〜4万くらい)な画像処理 ボード(ライブラリでとりあえず一連の画像処理が可能) を探しているのですが、ネット上で色々探したのですがみつかりません。 もしあったら教えていただけないでしょうか?よろしくお願いします。
自分で作ったら?
ハードはwebカメラとPC、ソフトは適当なライブラリやソフトでも探してきたら? PCIボードまで付いてるような奴だと専用のドライバが必要だったりして困る 新しいOSになったときにドライバが提供される保証もないし
300 :
デフォルトの名無しさん :2008/02/11(月) 22:02:36
301 :
デフォルトの名無しさん :2008/02/11(月) 22:04:01
ごめ、途中で送られた。 R'G'B'はガンマ補正とのことですがあるとないとではどのくらい変わりますでしょうか。 自分で感じ取られないならどっちも同じと言われそうですが。
まずは実際の画像を変換して見たら
>>300 たかだか8bitのRGBなら変換テーブルつくるだけでそこそこの速度出ると思うが。
304 :
300 :2008/02/12(火) 00:26:02
>>302 >>303 Thank you.
実際の画像を変換してみても自分の目にはそれほど違いは見られませんでした。
まぁ、こんなもんかな。と思います。
ですが、しかし、RGB->R'G'B'の変換を除いてもそんなに速度は変わりませんでした。
.Net in C#で組んでいるのですがBitmap.(set|get)Pixelが遅いのかな ?
これ以上はC#か.Net固有の問題になるとおもうので当該スレで聞きます。ありがとうございました。
# 変換テーブルと聞いて256 x 256 x 256 x 4 byteの変換テーブルを考えた俺涙目。
# この場合f(x) = x ^ 0.45のテーブルだけでいいんですね。
>>304 3*256じゃね?
そんなに時間がかかるとも思えんが。
306 :
デフォルトの名無しさん :2008/02/12(火) 03:21:26
画像処理の技術はどういった業界で生かされるのでしょうか
いろんなの
>>304 おまえがRGBだと思っている値がすでにR'G'B'な気がしてならない。
通常使われている8ビット画像(sRGBやAdobeRGBとか)では、
各画素の値(0〜255)は線形輝度じゃなくてガンマ補正後の値だよ。
>Bitmap.(set|get)Pixelが遅いのかな ? めちゃくちゃ遅い その遅さに比べたらRGB->Grayの演算なんて無視可能 バッファリングしろ
311 :
300 :2008/02/14(木) 02:12:34
312 :
デフォルトの名無しさん :2008/02/15(金) 03:17:34
イメージベースドレンダリングに興味があるのですが、これって普通、何を使ってやるもんなんでしょうか? C++とか? それともOpenGLとか? ご存じの方がいればぜひ教えて欲しいです。
何でも良いよ。
314 :
デフォルトの名無しさん :2008/02/15(金) 09:58:16
>>313 ありがとうございます。
OpenGLを使う場合、どのようにすればいいんでしょうか?
画像を2方向から貼り付けて、かぶってるところをブレンドするとか?
輝度値のみの画像において、 別の縞模様が混在するとき、 縞模様別にグループ分けを行うにはどうすればいいでしょうか?
cgal
フーリエ変換の話・・・?
>>314 SIGGRAPHの論文でも読めばいろいろわかるよ
319 :
デフォルトの名無しさん :2008/02/22(金) 02:35:37
エッジの抽出を行ってみたのですが、もと画像のエッジを強調したようにそれ を適用したい場合どのような計算を行うのでしょうか? エッジの抽出はカラー画像をグレースケールに変換して、それをラプラシアン フィルタで行っております。エッジを抽出したエッジだけの画像があるのです が、これをもと画像をどのような計算をしたらエッジの強調ができるのかを知 りたいです。
321 :
319 :2008/02/22(金) 03:20:01
>>320 ありがとうございます。 私もそう思いやってみたのですが、ものすごい不自然
なできになりました。
やったこととしては、エッジの値を256階調のグレースケールで保存しているた
め、これを足してしまうと各カラーが256を越えてしまうため、適当な値で
(64)で割りました。
その値を、各カラーに足したのですがエッジに当たる部分が強調されるのでは
なく、予期しない色になってしまいました。
>>321 単なるバグだな。
もうちょっと考えて作れ。
323 :
319 :2008/02/22(金) 03:32:30
考え方としてはあっているのでしょうか? エッジのみを表示するとエッジが抽出できていることは確認できているので、 それ以降の処理としては値を足しているだけなので、簡単に確認できると思います。 注意深く確認してみます。
まぁそりゃー変な色になるだろうなぁ。 (0,10,20) + 230 = (230,240,250) とされたら大分かんじは違うもんな。 RGB チャネル別々にするとか、 HSV の V の部分にだけ適用するとか(HSI でもいいけど)、 そういうが必要になるんじゃない? それでも強調の表現として Intensity を高めるのがうまい表現なのか、 とか考える必要がありそうな気もする。 「エッジ辺りは赤っぽくして強調してみました」なんて表現もありうるんだろうし。 なにもぐぐらず書いているので、ぐぐったほうが早いかも。
エッジは足すんじゃなく元の画像から引け。
エッジ強調とかソフトとかのフィルタを書けたときに、その効果が 見やすい画像ってどんな画像だろう。
横入り失礼。 おれも昔にエッジ抽出とか試したことあるんだけど、なかなかうまく行かなかった。 {{ 1 1 1} { 1 -8 1} { 1 1 1}} ってなフィルタを作って、それらを全部足して行ったら256越えちゃうの。 おれって阿呆なの? これをどうやったら256までの値にできるの?
つうか、こんな話は画像処理の基礎なんだから 本屋で立ち読みするなり、図書館で本を読むなりする 程度の努力はしようよ…
そんなこと言うなら、答えてやればいいのに
ソフトよりはエッヂの方が確かに難しいかもな
普通気付くでしょ、阿呆だよ
>>327 阿呆だなぁ。超えるのが普通だと思えないとはなぁ。
255 255 255
255 0 255
255 255 255
なら 255 * 8 の値になるだろ?超えるさ。
コーシー・シュワルツの不等式置いときますね -|X||Y| ≦ X・Y ≦ |X||Y|
>>334 越えるからどういうふうにしたらいいか聞いてるんじゃないんでないか?
適当に正規化すればいいんじゃないの?
うむ。そもそも画像ファイルとして表示しなければいけないというわけでもないしね。 どうしても画像ファイル的に表示したい場合 0-255 の範囲に正規化してやればいい
>内部は全部 double にして 計算速度、遅そう。 あと、正規化するんなら、アンダーフローもお忘れずに
内部はintとかでよくね?
用途による。FFTする必要があるなら実数にしなきゃならんし。
doubleの演算はfloatより早いよ
というのはガセ
というのもガセ
画像処理で整数型とかどんだけニッチな用途なんだよ
画像処理で浮動小数点とかどんだけニッチな用途なんだよ
画像処理とかどんだけニッチな用途なんだよ
正規化って何?
エッジ強調のCのソース無いかな
エッヂの強調は誰もが通る道なのか
むっつりですまん
漏れも通った 20年くらい前に
20年前って8ドットで16中2色しか使えない時代じゃん。
ハードウェアの制約があっても計算式は制約ないんじゃね? 多くの技術がそういうもんだろ
そもそも縁の強調って通ったとか悩むほどのものなのか
>>354 TMS9918乙、つーかもう26年前だそれは。
つーかX68kももう20年超えてるのか…。
>>356 結構難しいでしょ。
抽出なら簡単だけど、抽出した箇所を厳選(エッジの輪郭抽出とか、ノイズ除去)して
それをもと画像に適用しなくてはならん。
適用するのにもどの範囲を適用するか、適用の強度は、適用後のノイズ除去は。
とか色々な問題が出て来る。 ライブラリ使ったら簡単だし、Windowsでも簡単だけど。
多分、ここのやつらはWindowsでしょ。 画像加工の難しさを知らない
専用組み込み機器でやってるオレも見てますよ
アンシャープマスクじゃ駄目なのか?
>>359 OSはあんまり関係ないような
むしろ用途
364 :
319 :2008/02/25(月) 09:25:18
色々と調べてみたのですが、わからなかったです…。 私がやっているのは、8近ほうの各値(RGB255値)にフィルターの値を積算してそれを全て和算しています。 その値が120よりおおきければ、各値(RGB255値)に2を足しています。 この値を変えてもエッジが強調されているようには見えません。 皆さんはどのような計算をなさっているのでしょうか?
1%明るくしたくらいじゃ、強調にならないだろ。常考
ラプラシアンフィルタはエッジの抽出であって、強調はできないでしょ。
せっかく
>>361 が教えてくれているというのに皆ガン無視なのな
ラプラシアンでもやることは一緒やん
アンシャープマスクってソフトフィルタだろ?
ググれカス!がこれほどよく似合う
>>368 は居まい
na\\なんですかそれは
>>364 >その値が120よりおおきければ、各値(RGB255値)に2を足しています。
何のために?
>>349 正規化とは変な値を都合のいいように直すことだよ。
たとえば角度の-90度を270度に直すとか。
都合によっては逆に角度270度を-90度に直すのも正規化。
8ビットの画素の値なら
if(x > 255) x = 255; else if(x < 0) x = 0;
このxで描画すればいい。
>>372 >if(x > 255) x = 255; else if(x < 0) x = 0;
>このxで描画すればいい。
大学の課題でこれ提出したら減点だな。
画像として表示して何がしたいのかといったら、
エッジとしての強度を目視したいわけで、
256 も 1100 も全部同じ強度として表示するってんじゃぁ、
こまっちんぐだぜ
それは気がつきませんでした。 エッジ強度の目視とか そんなに大きな値を加算しているとは思いませんでした。
>>371 その値は0から1000を越えるものまであり、それをRGBの値に足すとおかしな画像になってしまいます。
なので、このばあいは120以上をエッジとするようにして、そのエッジ部分に一律2を足そうと考えました。
この考えは間違っているのでしょうか?
ラプラシアンなら負の値も出てくるだろ。 つうか、何で2を足すんだ?
>>376 負の値がでたら、絶対値に擦るようにしています。
2を足すのは、エッジの部分に対応するもと画像を強調したいためです。
すみません。 足していません。 引いています。
だから、1%程度明るくなろうが暗くなろうが目立つわけないだろと。
では、どのような加工をしたらいいのでしょうか?
少しは頭を使え。手を動かせ。
エッジ抽出以前に、画素の量子化とその値についての理解が全然足りないように思える。
スレ伸びてると思ったらwwww 久々にワロタwwww
まだやってたのか
誰も的確な答えを出さないからでしょ
ぷっ
理解不足しているだろうから、弄っているだjけ。 断片的な返答から的外れなのは分かるが、どこまで的を外しているか 全体像が掴めないので、誰も的確な返答が出来ない。www
まぁ、回答者の大半も意味が分かってないけどな。
問題が何なのかすらわからん俺にとって関係ない話だな
必要の無い奴まで書き込むから、こんな風になるんだよ。
ソースコードでもうpしてみれば盛り上がるんじゃね?
そのラプラシアンって元画像に合成しても 画像のエッジ強化につかえねーんじゃねーの? ラプラシアンてどんな値の範囲になるのかしらないけどさ。
薄緑だけ濃くしたいんですけど、どんな計算が有効ですか?
>>394 if (画素.色 == 薄緑の範疇) 画素.濃く(適当に)
>>395 上手く処理できました。ありがとうございます。
ワラタ
たまたまWindowsの画像を扱ってるコード見たけどひどいな。 ライブラリに展開とかすべてまかせて、それをWindowにはっつけてるだけ。 WindowにはっつけるのもAPI。 画像の加工はライブラリのできる範囲内でやってるし。
間違いなくお前の日本語が一番酷い
画像処理技術者って、結局『やってみなきゃ解らない』を逃げ場にしている人達のことですか?
で?
403 :
質問です :2008/02/27(水) 08:05:51
ここの人は親切だから、つい聞いてしまうんだが、
古いカラーのネガフィルムをスキャンして、データ化しました。中にカビだろうか
緑色のアメーバ状の汚れがあります。これを取るのって、範囲を指定して
緑の要素が強いピクセルのみ緑を弱くするしか方法はないでしょうか。
>>401 氏の発言も考慮の上、お教えください。
手でレタッチしたほうがはやいんじゃね
いつもの写真馬鹿か
もう学生の宿題ネタはお腹一杯
>>403 緑の汚れが乗っていると言うことは、その為に情報量が落ちていると言うこと。
従って、仮令緑を弱くしても元の画質が完全に再現できるわけではないことに注意。
if (画素. == カビ含む) 画素.取る(カビ)
カビの無修正画像
フィルムからカビを除去して再スキャン プログラムにまかせるよりも着実な気がする。
カビキラーでおk
C++嫌い
昔、ノイズ除去をやって思ったが、何をノイズと捉えるかが難しい。 「こっち」「そっち」の境界線が曖昧なのと一緒でノイズだと思いはじめたら全部ノイズに思えて来る。 画像上のカビも何をしてカビと特定するかが問題だ。 画像上でそこにあるカビの成分が検出できればもっと簡単かもしれん。
どう考えても>411だなぁ。>408の指摘する問題も解決するわけだし。
カビを見たい人だっているかもしれないからな
このスレ的な話題ではないが、 実際にフィルムをスキャンする仕事をしていたが、カビの除去はできない。 ある程度はできるが、ある程度以上はフィルムに傷がいくからそれ以上は繁殖を抑える加工をして スキャンして、将来的にカビを綺麗に除去できる技術ができるのを待つだけ。 個人のフィルムならどうでもいいと思うが、仕事として請け負うフィルムは歴史的なものが多いから。 色々な業務用のフィルム画像の補正ソフトを使ってみても、結局ホコリが綺麗に見えなくなるくらいが限界。 あとの変色とかは1ピクセル毎に手作業で修正する。 自動ソフトで頑張る価値はあんまりないと思う。
421 :
403 :2008/02/28(木) 19:32:14
皆さん &
>>419 さんありがとう。
解があることが分かった。気分は途も半ば。
422 :
デフォルトの名無しさん :2008/02/29(金) 01:32:04
ほこりや傷があった方が味がいいと思う。
jpegの量子化テーブルって8以下指定出来るん? 8bitに収まらんと思うんだが。
>>423 何が言いたいのかワカランが
量子化テーブルって1-255だろ・・・?
元画像とそれを画像処理したものを比較して、元の画像が含まれるかどうやって識別するのがいいのか 回転拡大縮小は無い前提で
目視
>>425 bool isInclude() { return true; }
他にどうしろと。
is includeって酷い関数名だな
テンプレートマッチングだかなんとか
process(元画像).eq.比較画像 まさかね…
>>425 適当に特徴抽出して、その特徴で比較すりゃいいだろ。
含まれるという言い方が悪かった 部分的に色合いが変化してたり、ネガポジ反転していても元画像と同じだと判断する方法が欲しかった やっぱり特徴抽出か
>>432 どんな画像処理をしたのか見当がついているなら、特徴を抽出する必要はないけどね。
>部分的に色合いが変化してたり、ネガポジ反転していても元画像と同じだと判断する方法が欲しかった RGB変化ならエッジ検出でいいんじゃない。
>>424 ん?えと、jpeg(てかDCT)の計算式だと0〜255の
8x8ブロックの計算結果が-1024〜1024になる(可能性がある)んよ。
つまり情報量が3bit増える訳なのね。
それを削除するためにjpeg基準テーブルは8以上を指定しているんだな、と。
つまり3bit以上減らすのが前提だと判断してたのよ、俺は。
でも某jpeg本が「超高画質なら1を指定しる」とか書いてたんで
「あれれれ?それマジ有り?」と思ったので聞いてみた。
知ってる人答え教えてちょ!
ってことで一つヨロシク
-1024〜1024なら5bit増えてない?
5?
あ、-1024〜1024じゃなく-1024〜1023だな。すまん。 ま、内部計算次第だけどさ。 ちなみに0-2047は11bitだぞう。
増えてるな。
>>435 DCTの結果についてはそのとおり
けど、量子化によって、8bitに収めるわけじゃない
量子化したあと、
ハフマン符号化でその範囲の値を受け入れるだけ
>>441 おお、ありがとう!
そうか、ハフマン忘れてたんだ。
いや、本当にありがとう。今度一杯奢るよ。
二つの色を比べてどのくらい似ているかを判断したいのですが、どのような方法がありますか。 生の色情報は、RGBのフルカラーで持っています。速度は要求していないので、変換するのは問題ありません。 赤、緑、青のそれぞれの色の差で単純に比較でも良い気はするのですが、65536色では緑に多くビットを割り当てるくらいだし、色の濃さによっては同じ差分でも感じ方が違うと思うので、もう少しましな方法がないかなと思っています。
RGBの差に輝度の係数かけてみたら?
「似ている」とは何を意味するのかが問題ですな
彩度が高いと色相が支配的になるだろうし、 色相によっては明度が違って見えるし、 明度が両極端だと彩度の意味がなくなるし、 ……
いわゆる特殊な色覚を持っている人が似ていると判断する色と そうじゃない人が似ていると判断する色は違うからなぁ
周波数領域での加工を前提とすると、 FFT前に窓がけしないと、周波数領域の信号レベルの確度が悪くなる 逆FFT後に窓がけしないと、時間領域で接続性が悪い 上の理由から実務上2度窓がけする必要があって、かつ、2度の窓がけ後の結果の オーバーラップが元信号に戻らないといけない。でも、han窓は1回の窓がけの 結果のオーバーラップで元に戻るように設計されてるから適さない。
なぜサウンドプログラミングスレのコピペが
>>443 まずyuy2にする。それで輝度と色度に分ける。
人間の眼は輝度>色度だから色度の重要さを下げる。
音よりは低いが人間の感じる感触は指数に比例しがちだからそれも考慮する。
ってのを考慮すればそこらのフリーソフトよりは精度上がるよ。
それ以上は研究の分野になる。
アナログ<->デジタルはいつの時代も研究さ。
研究とか言い出す前に「均等色空間」という言葉くらい出そうぜ。 塗料とか製造業の分野では色の違いは黙ってΔE*abで評価するものだ。
452 :
443 :2008/03/09(日) 00:04:22
>>444 RGBのそれぞれの差に、緑を大めに掛けてみるってこと?
>>445 色が近いかどうかって意味。
赤と青はだいぶ色が違うけど、緑と黄緑は色が近いとかって感じ。
>>446 色とかの判断方法は全然知らないのでちょっと調べてみたんですけど、画像関係のアルゴリズムは奥が深そうで・・・。
>>447 まー、一般的な人が似ている色とするってことで。
>>448 よくわからんけど、サウンド関係ってことかな。
>>450 ,451
YUY2とか、均等色空間とか、聞いたことない単語が出てきたから、明日調べてみる。
453 :
433 :2008/03/09(日) 13:36:32
まあそんなんでいいと思うよ
455 :
デフォルトの名無しさん :2008/03/12(水) 15:45:35
パターンマッチ+サブピクセル処理をいろいろ調べたいのですが、 いいサイト、本などございませんでしょうか。 本をみたりしていますが、なかなかいいものがなくて。 やりたいことは、撮影位置に移動してきた 丸いものの画像を取ったときのずれ量(XY座標) を検出したいです。 先生方よろしくお願いします。
456 :
デフォルトの名無しさん :2008/03/13(木) 18:13:55
どこまで調べた? 本のタイトルとか。 あと、それで満足できない理由は何かを教えといて。
457 :
455 :2008/03/14(金) 00:37:18
>456 すいません。 あと一日調べ倒してから、 再質問することにします。
そういやJPEG XRってどうなってるんだろ
DATファイルに格納されている画像を取り出すにはどうすればいいですか?
スレ違い
ある意味画像処理だなw
>>459 拡張子をmpgに書き換えてダブルクリック
>455 やりたいことから考えると、パターンマッチングよりハフ変換のような気がする。 その「丸いもの」は何? カメラ視野に入ってきたり出て行ったりするもの? 形や大きさが決まっているならテンプレートマッチングでいいけど。決まっていないならハフかな。 理論が知りたいなら、Forsyth「コンピュータビジョン」あたりが、理論はどうでもよくとりあえずできればいいならOpenCVでいいのでは。
464 :
455 :2008/03/15(土) 03:34:20
>463 ご返信ありがとうございます ハフ変換(円弧)実験してみます。 丸いものは、ちょっと答えられないのですが、すいません。 あと精度を高めるためにサブピクセル処理を調べていますが いまいち理解ができていないためか、 ハフ変換で円弧検出後、サブピクセル処理をどう実装すればいいか わかりません。頭悪くてトホホ。 明日、都会までいくので Forsyth「コンピュータビジョン」 OpenCVの本も買ってみます。 楽しみです。電車の中で読んでみることにします。 ありがとうございます。 制御ソフトとは、また違って画像処理は奥が深く 興味深いです
Computer Visionは日本語訳が出てますよ(調べてるだろうけど…)
丸いもの…… ディスク? 半導体ウェファー? 月? 鼈?
Forsyth「コンピュータビジョン」を持ち歩くのか...
>464 サブピクセル処理、わからなければ元画像を10倍に広げてやれば、元の0.1ピクセル処理したのと同等。 あと、フォーサイス&ポンスの本は理論偏重なのでズバリと書いてあるわけではないし、方向性が違えば全く役に立たない。読んでいて面白いから価値はあるけど。本屋で見てみるべし。
>>467 灌漑農業の上空写真か。
まるで圧縮画像のブロックノイズだな
画像の回転について質問があるのですが、回転行列を 固定小数点にて表現するときにはどの程度の精度があれば十分なのでしょうか? 自分の考えだとVGAの場合2^10>640であるため符号も込めて10ビットの精度が必要 であると思うのですが如何でしょうか?
君に目は無いのか
無いんです
474 :
デフォルトの名無しさん :2008/03/18(火) 03:25:33
このスレの住人なら知っていますね、あの糞開発ツールのことを ・自分のプログラムのバグなのかコンパイラのバグなのかわからない ・他の仕事に応用できない糞開発ツールの独自世界を必死に学習している ・テキストエディタで書いたほうが効率的なのに糞UIツールを懸命に使っている 糞だけど、政治的な理由で無理やり使わされているんですよね。 もう、あんな厨の作った糞ツールを我慢して使うのはやめましょう。 ・糞開発ツールを部下に押し付ける上司の命令は無視しましょう。 上司は糞開発ツールが使われる実績を作ることであの会社のごきげんをとっているのです。 ・あの糞開発ツール提供会社には「おたくの糞開発ツールは話にならない」と突き放しましょう。 バグレポートなどしてはいけません。改善要求などもってのほかです。 あの会社はあなたたちのことをテスター/モルモットとしか思っていません。 ・あの会議で「糞開発ツールを使ったら生産性がxx%アップしました」 なんて話が出たら力強く机を叩き、会議室を出ましょう。 あの人たちは糞開発ツールをマンセーすることで立場を確保しているのです。 糞な開発ツールを糞だと言える、そんな当たり前の環境をみんなの力で取り戻しましょう。
あれってどれだ いっぱいありすぎてわからん
Javaだろ。
Javaってツールなのか?
コンピュータ自体がツールです
Oracleのツール類だろ。
人間はわたしの道具です
我が共和国の同士は全て将○様の道具ニダ。 同士でないのは、奴隷ニダ。
アーア
lisp使ってる人っています? pythonなら沢山いるのかな ほとんどはc?
> lisp使ってる人っています? > pythonなら沢山いるのかな どちらも好きだが本格的に使うに至らない
簡単な処理ならPython+PILでやるときもある
488 :
デフォルトの名無しさん :2008/04/03(木) 22:12:23
489 :
デフォルトの名無しさん :2008/04/03(木) 22:32:58
>488 確かにすげぇ。 ピンボケしても元の情報って落ちてないのか。 落ちてると思い込んでた。
>>488 これはデコンボリューションの1種という捉え方であってるのかな…
いや、落ちますよ。写真として再現するレベルには足りているようですが。
この人は元Stanford大なんだね 研究成果を活かしたベンチャーらしい だれか興味がある人は元の論文読んでくれ
>>494 リンクにある顕微鏡版のはyoutubeにデモがあがってたな
あの〜、ピンボケの自動補正なんて、すごく地味で超初心者向けな機能なんですけど。 この手法を応用して、もっと別な面白いことに発展したらいいね。
つまり、記事を書いた香具師は画像処理の基本も判っていない半可通だと言うことで宜しいか。
記事ではマイクロレンズにも言及しているし、仕組みを何も理解せずに書いたわけではないだろう。 ただ、タイトルが「ソフトウェア技術」となっているのは誤解を招きやすい。
>>498 発表者がマイクロレンズって言ってたのをそのまま書いただけだろ。
ボディとレンズの間にマイクロレンズがあるって、あとから訂正されてるし。
ああ、さっき初めて記事を読んだから気づかなかったけど、
>>494 の1時間後に訂正されてたのか。
501 :
488 :2008/04/04(金) 21:16:52
やっぱりそういう話なのか(´・ω・`) 光学屋には面白いけど、画像処理はそこまで 複雑じゃないよなあ
これってあとから被写界深度も変えられるのかな
>>501 >>494 の2つ目の論文(SIGGRAPH 2005採択)を読んだ上で「そこまで複雑じゃない」と言ってる?
4Dライトフィールドと2D写真の関係を周波数空間で解析する理論のほうもかなり興味深いと思うけどなぁ
C以外を使ってる人って本当にいないのかい?
>>504 いくらでもいるだろ。このスレでもアセンブラの話をしてるやつがいた。
ただ、言語の話はスレ違い。
c#でもそこそこスピードでたので移行した。
himatsubushiってサイトの人は、 昔、VBで書いてた
test
グレースケールのある程度変化のある背景から明度の差がある 繋がった図形をどうやって抽出すればいい? 背景は基本的に連続的だが規則性はない 抽出するものは例えば中が塗られたいびつな円とかだけど輪郭は、ぼやけてる 抽出条件は基本的に周りより暗いってことだけ 人間がみれば見つけられるが、輪郭強調すると背景のパターンも強調されてしまう 背景は暗い部分もあれば明るい部分もあり、閾値は使えない
>> 509 何で背景は暗い部分と明るい部分に分かれるの? 安定した状態にならない理由は?
とりあえず1階微分とって観察。 2階微分とって観察してみれば?
シェーディング補正とかは使えないのかな?
boost.gilの正式版でたけど使ってる人いる?
3月にでたBIASのリリース版使ってる人いますか? 深刻なバグあったりしないですか? うちは挙動がおかしかったので前のバージョンに戻しました
なにそれ
>509 面積・幅・形状よって適した方法が変わるので、モノは何? 言いたくなければ、近いものでもWebイメージから指定したら? 汎用の回答でいいなら、「Photoshopでアンシャープ後、2値化する。」
例外が発生するバグほどデバッグしやすいものはないと思うが。 デバッガ使えばすぐにどこが悪いか分かるだろう。
BIAS::Vector3<double> v=hoge(); と BIAS::Vector3<double> v; v=hoge(); を繰り返し呼ぶと答えが違う c++の行列計算はもうublas以外信じねえわ
どうせ80ビットで計算するならlong double残しといてくれって話だよな
523 :
デフォルトの名無しさん :2008/05/09(金) 12:04:20
VBやVCから使えるDLLで、2枚の画像を半透明合成できるものってあるかなあ・・・
今から作れば? おやつ前にはできるだろ。
作れないザコのゴミレス程、存在価値のないものはないなw
>>523 mDibでググれ
2枚の画像の半透明合成って、対象の画像を1bitずつ交互に描画していくだけじゃだめなの?
半透明のコードぐらいググればすぐ出てくるじゃん。
本件に関しては、DLLを探して使い方調べているより自分で作った方が早い に一票
>>524 =528
作る技術もないのにエラソーにw
いくらなんでもそれはスキル低すぎだろ。 DLL作ったことありませんとか、BMPの扱い方が分かりませんのレベルか?
>>529 10行程度のプログラムに「作る技術」もないだろ
煽ればムキになってコードが返ってくる と思ってるくさい
口だけのやつばっかだなw
>>532 10行程度なら書いてみな? 無理だろほーらばかw
普通にググったらソース出てくるのに。もうアホかと。
537 :
523 :2008/05/09(金) 18:39:14
>>535 ソースがあれば何でもできると思っている基地外発見ww
どんだけスキルないねん。ここム板やで。
普通にググったら詳細な説明も出てくるのに。ゆとりか?
>>537 おまえのせいで荒れてるのに、不自然なんだよ。
自演してんじゃねー、ボケ。
あるふぁぶれんど?
ちょっと上の方でも出てるので便乗で。 現在様々なブレンドモードに多対応させるため、いろいろ組んでるのですが、 通常のアルファブレンドの部分でどうしてもエッジが黒ずんでしまいます。 合成前のイメージはGDIなどで貼り付けた場合は黒ずまないので補間処理が 間違っている訳ではないみたいなのですが… byte tb;//前景色(青) byte t;//背景色 byte ta;//前景のアルファ (((tb - t) * ta) >> 8) + t これを各色回してるのですが、どこを間違っているのでしょうか?
>>544 それbyteじゃ駄目だろう。
あとαが0〜255なのに、256で割ったら駄目だろう。
>>545 byteは演算式の中ではintに自動格上げされるから問題ないだろ
>>545 回答ありがとうございます。
byteは引き算が入ると自動的にintにアップキャストされるはずですが…
αを256で割るのはどこのページを見ても256で割ってるor8ビットシフトしてる
のであってるのかと思いましたがそうではないのでしょうか?
とりあえず、変数をdoubleにし、255で割ってみましたがだめでした orz
元画像が前乗算済みARGBになってたりはしないよな? GDI+で言うPixelFormat32bppPARGB
アルファが正しいかどうか疑うべきだな
>>548 それはないです。ちゃんとPixelFormat32bppArgbとなっています。
>>549 αはGDIで合成したときは黒ずまないのであってると思いますが…
一応補間部分の式も載せておきます。
byte c1, c2, c3, c4;//各ピクセルの色
byte c1a, c2a, c3a, c4a;//各ピクセルのα
float px, py;//位置
float pp = px - Math.Floor(px);
float qq = py - Math.Floor(py);
float ip = 1 - pp;
float iq = 1 - qq;
float a = (ip * ((iq * c1a) + (qq * c3a))) + (pp * ((iq * c2a) + (qq * c4a)));
float c = ((ip * ((iq * c1 * c1a) + (qq * c3 * c3a))) + (pp * ((iq * c2 * c2a) + (qq * c4 * c4a)))) / ta;
こんな感じなのですが…
>>550 cの計算でα掛けちゃってるのが悪いんじゃないか?
>>551 元々cでアルファは掛けてませんでしたが、その頃からすでに黒い線は
出ていたので、αを掛けてる例もあったので試してみましたが… orz
んー、どういう画像を元にして、処理後どうやって表示したとき変に見えるのか、とかちゃんと書こうぜ。
>>553 画像は32bitARGBな画像で、背景がα=0でないとき、重ねるイメージを0.5px移動や回転など
で1px未満でずれたイメージのエッジ部分が黒ずんで見えます。
0 0.33 0.67 1 (px)
│
└─┐
│←こことか 重ねたイメージ
└─┐
│←こことか
└─┐
背景 │
└─...
上の0 < x < 1の部分が黒(灰色?)っぽくみえます。
上の図は画像ではこんな感じです。 0 0.33 0.67 1 (px) │ ├─────┐ │//////////│←こんな風に黒っぽく │//////////│ │//////////│ 重ねたイメージ │//////////│ │//////////│ └─────┼──... │//// 背景 │...
お前それ、もしかしてバイリニアの色漏れ・・・・ αと関係ないだろ・・・・・・・・・・・・・・
>>556 マジすか orzorzorz
でもなぜ変形後のイメージをGDIで重ねたときは黒っぽくならないんだろ…
GDI描画でちゃんと補完モードはバイリニアになってるか? いいから一回描画する画像のαが0のピクセル全部を緑色とかにしてやってみろ。 今度は暗くならず緑色が出てれば間違いなくバイリニア補完での色漏れ。
>>558 やってみました。
GDIの補間はバイリニアになってますが、暗くならず、ちゃんと緑になってます。
ただ、自前のバイリニアだと暗くなってます orz
しかも、もっとキモイ事に32bitPNGで保存したときは黒ずみが消えているという…
何をしたWinForm orzorz
けっ、どとねと使いか・・・ 説明わかりにくいし、状況小出しだし、もうめんどう。 後は自分でがんばりや。
先ほど書き出したPNGをPsで見たところ、エッジの部分のαが背景と重ねたイメージが
255なのに対して、少し減っている事がわかりました。
やはりアルファブレンドの処理で何かやらかしていたようです。
>>560 とりあえず原因がつかめたのでどうにかなりそうです。
長々とおつきあいいただきありがとうございました。
//どとねとってどこ行っても嫌われてるのは何でだろう?
>>561 補間一つ取っても、どんなアルゴリズムで実装されているのかわからないメソッドなんかがあるから嫌われる。
# なんだよ「『HighQuality』BiCubic」って……
>>562 字面通りに捉えれば、BiCubicの高精度版ってだけなんじゃね?
小数点以下の有効桁数の問題なのでは。
それにしては違いすぎているから、多分そうじゃない
それってドトネトじゃなくてGDI+じゃないの?
>>565 ドトネトのはGDI+のラッパーだからドトネトにもあるよ
.NET使いのやつには、まず自分の知識不足、理解不足を疑う必要があるのに、WinFormのせいにするような輩が多いからだよ。 まずは自分を疑えと。話しはそれからだ。
それはC++でもJavaでもPHPでも同じだと思うけど?
>>566 だから
>>562 は「どとねとってどこ行っても嫌われてるのは何でだろう?」への回答としては不十分だって話だろ
VC、VB屋でもDLLだけ欲しがる奴もいるし、 コード張ってくれなきゃ逆切れする奴もいるし、 .net屋だからというのは偏見だと思うな。
自分のプライドを守るために卑しむわけです。
イラストと写真を判定したいのですが よい基準ありますか
>>567 それ.NET使いに関係なくどの言語・基盤技術上でも底辺プログラマには共通
イラストの写真
アイドルマスターは実写。
>>572 勃起したらイラスト
萎えたら写真
俺の基準
>>572 もう釣りにしか見えないけど、自分が絶対断れない立場でこれをやれといわれたら
光の分布をチェックすると思う。方向ならなおよし。
>>577 詳しく
写真から3Dモデルを作るくらい難しい?
イラストを写真に撮ったのはどうすんの
イラストだけならイラスト 額が映っていたり遠近法で歪んで見えると実写だろ 3DCGは?
実写に手を加えたものは?
属するクラスの選択によって結果が違うだろうな。 両方やって妥当なほうを選択するだろうから 手を加える割合によるんじゃね。
完全に汎用なのかどうかにもよるが、画像の特徴抽出をいくつか実装して、 インターネット上に転がっているイラストや写真をどんどん喰わせて出力、 抽出されたパラメータを眺めて相違点を取り出し実装するのが一番現実的 じゃないか? 有意な相違点がなかったら? それは区別できないってことだ。
輪郭線
>>583 だろうなあ。
今、2割誤判定する方法をふたつ作ったので
こういうのを増やしていってAdaBoostなんかで繋げばいいのかな。
>>584 イラストは縁取りがある判定は一番初めにやったがダメだった。方法がダメなのかもしれないけど、
(1). 微分フィルタでエッジを出す
(2). 暗い色、または鮮やかでない色を抽出
(3). 3近傍内に(1)がある場合、3均衡内に(2)がある割合を求める
ってしたが、縁取りが無いイラストがあったり、あっても縁取りの色がイラストによってまちまちなのと
写真もエッジが出るあたりは暗くなっているので単純に暗い色でやるとうまくいかなかった。
まずは、イラストで縁取りされている輪郭線の色特徴からかな・・・。
コンピュータで書かれているイラストなら 色の変化が機械的に整っている。
588 :
M1 :2008/05/11(日) 20:50:55
大学院で3次元の画像認識・理解をやろうと思ってるのですが、お奨めの参考書とかありませんか? ネットで調べると情報は多くあるが内容は少ない。参考書探そうとすると参考とできる書籍自体がない(´・ω・`) 学部ではOpenCVで画像処理やってました。機械の制御の研究室なので、誰も当てにできないヽ( ´Д`)ノ;
コンピュータビジョン (単行本) David A.Forsyth (著), Jean Ponce (著)
2chよりは、論文探してその人にメールした方が確実だな。
592 :
デフォルトの名無しさん :2008/05/12(月) 01:44:46
この分野は進歩が激しいので教科書より論文とかプロシーディングだろうな。
>>586 個々の判定方法の出力をうまいことひとつにまとめることが出来るなら、
その出力を利用してどちらかを判定する部分に、学習を行わせるツールを作成するといいよ。
面倒だったら、いくつか初期設定した後、どちらかがはっきりしている
1000枚くらいの画像を利用して、GAで境界値(または値の分布表)を
収束させると、うまくいくときは楽でいいだろう。GA部分の作成はたいした手間でもないし。
あとは勝ち残ったアルゴリズムに未知の画像を分類させて、分類に利用する既知の画像を
増やしていくことで、10万枚くらいまでデータを増やせれば、代表的な画像の判定なら
かなりのところまで精度を上げられると思うよ。それ以上は難しいだろうが。
>>588 そういう大学で、大学院があるなら、画像研究をやってる研究室があるだろ。
そこにいって相談するのが一番早い。
ないなら、教授のつてで他大学の研究室を紹介して貰え。
縦割りの大学に将来はないぞ。
>>594 自宅警備員が偉そうに大学語るなよ(笑)
>>593 その程度で難しいって・・・スキル低いやつだなww
言い訳www
知識を無理に披露しようとした
>>523 かな。乙w
オカズに使ってます
602 :
M1 :2008/05/13(火) 12:28:28
>>589-594 レスthx!やっぱ論文とか他の研究室あたるしかないようだな・・・
>>589 \14,000・・・・
図書館に申請か・・・・・
マンドクサ('A`)
603 :
デフォルトの名無しさん :2008/05/13(火) 18:54:38
ImageMagickで、24bit-BMPを8bit-BMPに変換したいのですが、 どうすればいいか分かる方いらっしゃいましたら教えてくださいm(__)m
604 :
デフォルトの名無しさん :2008/05/13(火) 19:28:50
何のために減色したいのか知らないけれど、ファイルサイズを気にしているなら小さい画像だと逆効果なので要注意。 8ビットカラーBMPはパレットカラーだからパレットサイズが馬鹿にならない罠。
スレ違いの謗りを免れないが、教えてください。 jpeg で圧縮後のサイズを指定できるという書き込みを見かけて、最近また そういうのができるといいと思い出して、やり方を探しているが分からない。 quality 指定の説明しかない。サイズ指定って出来ないですよね。
作るとしたら、DCTを済ませておいて 予め用意しておいた複数の量子化テーブルで圧縮試行を繰り返す、みたいな感じになるのかな・・・
ハフマン符号化があるから、処理前にサイズを求めるのは難しいね。 Qualityとファイルサイズの関係はだいたいどの画像も同じような曲線になるから 近似関数を求めておいて、適当なQualityで圧縮してから逆算してみるとか。 単純に二分探索でも良さそうだが。
QRコード画像を作りたいけど どう作ればいいか載ってるサイトか本ありますか?
はい。
612 :
606 :2008/05/15(木) 15:35:57
>>606-608 ファイルの話で、どうしても指定サイズ丁度にしたいのなら、
圧縮した後、非圧縮部分を付け加えて指定サイズにするのが簡単だ。
>>613 写真のJpegデータをトリムした後、Exif ヘッダ内に埋め込まれた2つの画像
データも更新して置こうと思っているのだが、小さい縦横の画像のJpegデータ
を作ると、そのサイズが大きくなって、Exif ヘッダに収まらない。(で今は
収まらなければ Exif 形式を諦めている。デジカメではうまく収まるように
よく作っているもんだと感心している。)
615 :
デフォルトの名無しさん :2008/05/16(金) 17:20:31
画像データの余白部分を指定した幅にしたいのですが、 どうすれば、できるのでしょうか。 画像データが複数ありバッチ処理できると良いのですが。 具体的には、 画像データの空白(白色)以外の部分に外接する四角形と 画像データの外周との幅が、指定された値になるよう、 余白部分を切り取ったり、追加したりする機能です。 よろしくお願いします
スレ違い
617 :
デフォルトの名無しさん :2008/05/16(金) 18:13:01
Visual C++を使って画像ビューアを作成(bmp・jpegが表示でき、色調・コントラスト機能が実装できるもの)したいのですが、どうしたらよいでしょうか??初心者なので何から手を付けていいのかもわかりません。環境はVisual studio 2005です。よろしくお願いします。
開発環境のスレできけ
ImageMagick でいいんじゃね。
620 :
デフォルトの名無しさん :2008/05/16(金) 18:38:15
ゴミ
聞く前にググらないとか有り得ないし100%釣り
623 :
615 :2008/05/16(金) 20:52:18
>>616 スレ違いですか。申し訳ありません。
ググるキーワードか、お薦めスレ等を教えて頂けると幸いですが。
よろしくお願いします。
>>617 Express EditionならGDI+を使えばJPEG、TIFF、BMP、PNGを
読み込むことができる。
Standard以上でMFCが使用できるならCImageクラスを使用するなど
できますよ。
>615 Photoshopでアクション(SelectAll ->領域をshrink->領域反転->削除)を設定し、フォルダごと適用すればいいのでは。 >617 OpenCVのサンプルコードにあったと思う。とりあえずOpenCVインストールして、あとはそちらのスレへ。
626 :
デフォルトの名無しさん :2008/05/16(金) 23:53:42
627 :
615 :2008/05/17(土) 11:09:43
>>625 レスありがとうございます。
今現在は理解できませんが、勉強いたします。
>>625 >Photoshopでアクション(SelectAll ->領域をshrink->領域反転->削除)を設定し、フォルダごと適用すればいいのでは。
これだとデータを削ることになるジャマイカ。>615の目指すところとは違うと思うぞ。
何をしたいのかはっきりしないけど、 Photoshopアクション(カンバスサイズの拡張->上下左右20ピクセル)だと、元画像を削らない。
もう一度読むと、何がしたいのかなんとなくわかった。 もともとある程度の白枠があるわけね? それなら、アクション(位置(0,0)を許容値0で自動選択->削除->カンバスサイズの拡張->上下左右20ピクセル)。
板違いもいいとこだ。自分でプログラム書けば簡単だろ。
フーリエ記述子から振幅スペクトルと振幅スペクトルの2乗であるパワースペクトルを求めると何の役に立つん? 振幅スペクトルって2次元ベクトルを足して1次元にしてるだけにしか見えないんですがー
はじめまして。 すごく初歩的なことをお尋ねします。 CMYKカラーのJpegファイルには、解像度(dpi)情報は含まれていないのでしょうか。 RGBカラーの場合は、取得することができているのですが・・
そもそも、RGBカラーのJPEGなんてあったっけ?
>>633 とりあえず、そのファイルをうpしてみろ
>632 フーリエ記述子って知らんけど、フーリエ変換からのアナグラムと同じだと考えると、 振幅とパワースペクトルとの違いは位相成分なので、起点が違うんじゃね? パワースペクトルだけだと形の同一性しか分からないけど、位相まで含めれば向きが特定できるとか。
>>634 あるよ。規格上は。
現物のファイルでは見たこと無いな
epsの入出力に対応して欲しい>gil
640 :
デフォルトの名無しさん :2008/05/23(金) 06:32:39
.NET Framework 1.1 の C# で実装しています Bitmapクラスに画像イメージを作成・編集し Bitmap.Save にて Tiff フォーマットを指定して保存しています この時に Tiff が圧縮された状態で保存されてしまうのですが 無圧縮での保存は可能なのでしょうか よろしくお願い致します
641 :
640 :2008/05/23(金) 07:27:32
>>640 です
EncoderValue.CompressionNone
を指定する所までは行ったのですが、実行すると圧縮されている・・・
スレ違い .NETスレに池
無圧縮TIFFくらい自分で書けば?
>>644 まだコード書けないのか。おまえ何でム板にいるんだ?
また、自分でコード書けないいつものバカが暴れてるのか。
ぼかしの高速化について質問です。 現在ガウスぼかしの処理を書いてるのですが、640x480範囲5で1枚あたり0.5秒もかかって しまい、非常に遅いです。一応1次元に落としてはいるのですが、重み付きぼかしの場合、 通常のぼかしのように処理済みのピクセルの結果を流用することができないため、どう 計算量を減らすのかわかりません。 SSEも見様見真似で使ってみましたが、アルファ加重なしで40%高速化、ありではSSEなしと 同じ速度でした。これはたぶん書き方が悪いのだとは思いますが… なにか参考になるところ、もしくは検索キーワードをいただければうれしいです。 よろしくお願いします。
例えば5x5ピクセルを参照して1ピクセルの値を求める場合。 計算上問題がなければ、縦5ピクセルx横1ピクセルの加重平均を横一列分計算して、 次にその結果の横5つを加重平均するようにすれば多少は処理を減らせる。 まあ、それでもぼかしって基本的に参照するピクセルが多くなりがちだからそうそう高速化は。
>>650 具体的に、0.5秒かかっているときのカーネルの大きさ(or ガウシアンの標準偏差)はどれくらい?
GPU使っちゃダメ?10倍以上速くなると思うけど。
質問です。 例えば下のような図があったときに、1〜11のそれぞれ領域を、 隣接する他の領域と異なる色で塗り分けるプログラムを作りたいのですが、 各領域の色を決定するアルゴリズムにはどういうものがありますか? 〈`ー─-、_ノ^j `> <__, ─-、____ / j / ̄ ̄ ̄Tー‐─┬''⌒ヽー-- 、 r' /、 1 / | 5 | 7 | |9 └---─、 / ` ー──/ 3 | │ | l | \ / / ┌┴─‐─┴┐ / 8 l | \ / 2 /ー─ ----l 6 |‐┤ l | V / 4 └──‐──┘ | l | し个 、 / | ハ〈 | ` ーl─‐┬─----------──┬─イ´ ̄ヽヽヽ | /ヽ | | ハ 〉 〉 〉 | / | | | / │ / 〈ノ | | | | | / | / __/ | __/ |10 __/ | __/ |10 (__」 ゙ー-‐' ゙ー-‐'(___」 人 (__) (__)11
宿題は自分で考えましょう
656 :
650 :2008/05/24(土) 11:54:39
>>651 とりあえずそうしているのですが、その結果が0.5秒です orz
>>652 5です。 10だと約1秒でしたので、カーネルサイズと比例関係になっていると思います。
>>653 GPUですか…
DirectXは全くさわったことがないのでそこから始めなければならないんですよね… orz
もしGPUを使うとしたらシェーダは自分で書かなければならないのでしょうか?
GPUはCG言語から扱えるのでは
658 :
デフォルトの名無しさん :2008/05/24(土) 12:15:13
CgよかBrookGPUの方がよくね? いっそCUDAかCAL使うのも手だけど。
ageちゃったスマソ
661 :
650 :2008/05/24(土) 12:49:23
うーん、できれば古いPCでも動くように作りたかったのですが、計算量はこれ以上減らせる
見込みはないのかな… 周りとの平均をとる以上無理か orz
>>657 ,658
やっぱり自前でシェーダ書かなければ無理ですよね orz
というか、かなり大きめの画像(HD以上)も扱えるようにしたいのですが、テクスチャ作れますかね?
>>660 ありがとうございます。
見た感じなんかCとはちょっと違いますね。
大きくは違わないけどCのノリで行ったら痛い目見そうだ
単に広範囲をぼかすだけなら小さめのガウスぼかしを複数回かける手もある。 クォリティ下げていいなら移動平均にすれば大きくぼかしても負荷ほとんど増えないが。
広範囲で極端な精度を求めないならパスカルの三角形を繰り返してやれば 擬似ガウシアンだよな。
そのくらい単純な処理の場合、計算量を減らすよりも キャッシュのヒット率を考えた方が速くなると思うよ。
OpenCVのガウスぼかしはCPUにしてはわりと速いと思う
666 :
650 :2008/05/24(土) 17:51:01
遅くなってすいません。
>>662 移動平均ということはモーションブラーのようにちょっとずつずらして
いくつも重ねてレンダリングするということでしょうか?
>>663 調べてみましたが、これも良さそうですね。 あんまり見た目も変わらないですし。
>>664 基本的に全部のピクセルを順番に走査するのであまり変わらないような気もしますが…
そこまでキャッシュミスするものなのでしょうか?
>>665 OpenCVですか。 言葉は聞いたことがあるのですが、どんなものなのでしょうか?
ちょっと調べてみます。
ぼかしは、計算時間かかるから、0.5秒なら妥当だと思うけど。 ちなみに、ガウシアンカーネルをコンボリューションしているの?FFTしてから掛け算しているの? 一般的に、前者は遅い。 ぼかしくらいで、OpenCV導入することはないと思うけど、OpenCVのブラーはたぶん後者。 3次元でブラー掛けた時、FFT2回分の時間と同じくらいだった気がするので。
668 :
650 :2008/05/24(土) 19:13:06
>>667 >>651 のように縦横別々に分けて掛けてます。
この方法だとO(2n)になるのでFFTよりは速い(たしかO(nlogn)だったと思うので)のでは
ないかと思うのですが、どうでしょうか?
いろいろ試したところ、通常のぼかしやカーネルの小さいガウスぼかしを重ねがけするのが
結果的にも時間的にもいい感じなのでもうちょっと調べてみます。
>>668 その方法ではせいぜいO(n^2)までしか行かない
縦横別々にFFTを使うほうが効率がいい
670 :
650 :2008/05/24(土) 20:23:25
>>669 マジっすか orz
手元にFFTの乗った教科書があるのでちょっと見てみます。
…2^nのみじゃないといいなw
教科書みるよりOpenCVのソース見たほうが速くない? 用途にもよるけどAvisynthのフィルタもいろいろな処理のソースあるよGPLだけど。
FFTはFFTWを使うとして、係数を事前計算しておけばガウス暈しは(周波数空間像の)画素ごとに係数を掛けるだけなんだっけ?
畳み込みの勉強をすればいいかも
ちょこっと書いてみた所 Window Sizeは5×5 Pentium-4 2.4GHzで640×480、24ビットカラーで70ms 同8ビットグレイスケールで20ms コンパイラはVS.net 2003 ProのC++でSSEもアセンブラもなし最適化は/G6 実数演算しているので整数演算にすればもう少し速くなると思う。 このくらいの速度はでるという参考にでも。
>>650 の実行環境すら分からない状態で、0.5秒が遅いという本人の印象だけで
実装アルゴリズムもソースも、言語すら書かれていないというのに、
どうしてこんなに速いだの遅いだの言う話が進むのか。みな超能力者なのか。
とおもたよ。
理論的な早さは実行環境によらず語れるじょん?
>>675 「遅い」と言われたら、だいたい原因の想像がつくからだよ
>>676 速さ、な。
650が現状どの程度計算量を減らす手段をとったのか正しくわからない状態では、
適切な助言はできないだろ。もしかしたら、環境が遅いだけで650は最速に近い
アルゴリズムを実装しているのかもしれないぞ。
いずれにしても、ワークを直接ポインタで操作しているという前提で、汎的な工夫なら、
1.640x480なら、650x490のワークを利用することで境界判定をなくして
2.1次元化して座標からのアドレス計算を減らして
3.平均化も縦横個別に1次元化して(
>>651 )
4.必要な精度にもよるが適当でいいなら固定小数点化して整数演算に帰着させる
くらいしかないんじゃないかな。
679 :
650 :2008/05/24(土) 21:40:10
FFTのソースやら説明を読んでたら頭が爆発しそうになりました。
ろくに数学をやってないのに手を出すべきじゃなかったかもしれません orz
>>674 (゚Д゚)
>>675 ソースが糞だからだと思います。
しかし、自分も糞なので糞が直しても糞にしかなりません。
>>678 現在は2と3をやってます。
1はコピーに時間がかかりそうですが、コピーはしないのでしょうか?
FFTは別に理解していなくても、使えればいいよ。 (気持ちに余裕があるときクーリ&ターキの大発明を理解したらいい。元はガウスだっけ?) FFTは特にFFTWくらい高速なものになると理解困難。 サイズによってアルゴリズム変化するらしい。 使い方もちょっと特殊。 ま、何も考えずに使いたければ、OpenCVにIPL組み込むことだ。ボカシ命令実行するだけで、すべてやってくれる。
8bit インデックスカラー画像を、さらに可逆圧縮する方法は無いでしょうか? 汎用的な圧縮アルゴリズム以外で。
誰かエスパーいたら、相手にしてやれよ
>>681 自分で考えれば良いんじゃない?
これだけじゃ、これぐらいしか回答できない
PNGにデータを保存すれば良いんじゃない?
可逆圧縮だし、8bitデータも扱えるし
何も意識せず、保存したいならGDI+で良いと思うよ
アルゴリズムも気にする必要もない
>>681 BMPで画像サイズが小さいなら、24ビットにした方が小さくなる。
お勧めのTIFFからJPEGに変換ツール教えてください。 JavaServletから使いたいです。
ImageMagick Serveletから使えるかはしらね。
おまいら、YYフィルタってどうよ?
アホクサ20年前のレベルやん
690 :
デフォルトの名無しさん :2008/05/29(木) 23:44:57
>685 普通に、SDKのクラス使えばできる。 java 画像変換でぐぐれ!
692 :
デフォルトの名無しさん :2008/06/01(日) 16:47:50
vine4.2でImageJをインストールしているんですが、 □□□など文字化けが起こるのですがいい解決方法がありませんか?
フォント指定してないからだろ
それは一般に豆腐と呼ばれる現象なのでググるとなんかわかるかもね
>>691 まるかいてー、角度でわけてー、半径でわけてー、
その半径のわけかたはー、log っぽくてー、
で、点の数をかぞえるー
696 :
デフォルトの名無しさん :2008/06/03(火) 00:46:49
>>696 中心からの距離に比例して回転角度が変わるだけ。
マッピング「曲線」とか言ってる時点で根本的な部分で勘違いしている気がする。
画像輪郭抽出アルゴリズムの話なんだけど 微分値を拾う方法以外の方法で何か有名な方法ってありますか 有用な方法で思い当たる方法もあったら教えてください
領域分割してラベリング後に境界をとったら? やりかたはたくさんある。
>>699 微分にもいろいろあるだろうけど、
ほかにも、ぼかし+HPFとか、ウェーブレットでHH成分を拾うとか、色相変化をチェックするとか、
レベルセットの簡単なtutorialどこかにないですか?
703 :
デフォルトの名無しさん :2008/06/03(火) 13:40:36
そういえば 先日サイエンスに視覚神経がポジ画像ネガ画像を同時に送ってるってのがあったな あといくつかの他のいわゆるレイヤーを同時に脳に送りつけてるって この方式は輪郭抽出や画像認識で既に使われてるのかな
704 :
696 :2008/06/04(水) 00:25:16
>>697 さん
いや、それがですね、中心距離への比例だと思ってやってたんですよ。
周辺から中心にいくにしたがって回転角をまわしてやるようにつくっても、
フォトショップのような自然な渦巻きにならないのです。
>>698 さん、あえて「曲線」と言わせていただきますが、
再マッピングに曲線式をあてはめると、なんらかの減衰項があるような感じなのです。
昨日からずっと調べてたのですが、クロソイド曲線をつかうのかなぁ?
じゃあ2乗とかちょっと微調整やるってかんじじゃないのかな。 自然ってのは自分が思うまで微調整やるしか
706 :
698 :2008/06/04(水) 01:08:30
>>704 Photoshopが何をやっているかは、
↓のような画像を渦巻き変形してさらに「極座標を直交座標に」の変換をすれば一目瞭然。
┌───┰───┐
│ ┃ │
│ ┃ │
│ ┃ │
│ │
│ │
│ │
└───────┘
回転角度が中心に向かって単純に比例ではなく、
1 - sin(πx/2) に比例していることがわかる(0≦x≦1 は中心からの距離)。
つまり中央付近ではほぼ等速変化だけど、周縁では無変換領域と滑らかにつながるようになっている。
リチュースやクロソイドでは中心付近で回転が加速していくので描画効果としては使い物にならない。
もし704が問題なんだったら対数螺旋のような動きにしてみたら如何かな
単なる係数と補間精度だけの問題のようなきがする。
>>707 対数螺旋も中央付近で加速していくからフォトショップのようにはならないよ。
696氏はフォトショップの渦巻きフィルタの再現をしたいんでしょ?
フォトショップは中央は一様螺旋で周囲だけ緩和がかかるから
>>706 が正しい。
妥協すれば全て解決。100%コピー目指すなら逆アセしろ。
いろんな言語使ってる人いるみたいだけどrubyな人はいないみたいだね
エスパー乙
>>771 画像処理をしだしてからCばっかりでPerlとかは使わなくなった。
画像解析自体をスクリプト言語でやったりするんやろか
多段のフィルタを組み合わせたりするのにLL使うのはいいだろうけど、 画像処理自体に使うのはちょっと‥‥ねぇ
exe を走らせるスクリプトとかなら (*´・ω・)(・ω・`*)ネー
pythonはPILあるけどrubyはそれに相当するものないから使われないってことなのか
スクリプト言語は文字列処理が得意なのであって、 画像処理、行列処理、をさせようと思ったら特に意味がない。
文字列は配列を切って貼ってする必要があるけど、画像処理はとってきた特徴量を 放り込んでおくだけってイメージ
ハァ?
>>695 分ける前の半径ってどうやって決めてるん?
曲座標変換が関係してるんかな?
あー、半径は自分で適当に設定するのか
722 :
696 :2008/06/15(日) 10:37:03
どういたしまして
MPEG-7のデータセットをgoogleで探していたら IEEEのサイトに飛ばされることが多いのですが、アカウントをとらないといけないのですか?
H.264の実装説明した奴ないですかね?
x264のソースを落とした上でmarumoんとこでも読んで来い
画像センサや画像処理装置のスレって無い?
ハードは板違い
>>728 俺も探してるんだが無いね。
できたらCognexのVisionProとかリンクスのHalconだとかの情報も欲しいんだが・・
ImageMagick使ってPostScriptの回転・マルチページ化したいんだけどラスターデータみたいなガタガタの画になってしまう… 所詮こんなもんって事? 最終的にはPDFファイルにしたいんだがいきなり頓挫気味です。
displayだのconvertだのimportだの無遠慮に使い潰すこのゴミが
733 :
デフォルトの名無しさん :2008/07/04(金) 01:15:23
画像認識で自転車を認識したいのですが、どのように認識させていいのかわかり ません。 今は自転車の簡単な特徴点をテンプレートととして用意してその点を認識させよ うとしているのですが なかなか認識させることができません。(テンプレートは自転車の車輪を想定し て円状に点を6点取っています。 うまく自転車を認識させる方法がありましたら教えてください。
横よりも縦から見ること多そうなので、丸で判別するのは難しそう。 結構面倒と思う
>>733 認識?検出?認識でいいんだよね?
顔認識とかと同じようなかんじで(ある意味での)情報圧縮を
使って特徴量を得てみたら違いがでるのではなかろうか。
主成分分析 (PCA)とか、線形判別分析 (LDA) とか。
で、識別器はパターン認識のなにかの手法、とりあえず k-nn でもいいし、SVM でもいいし使ってみたらそこそこ動いちゃったりしないだろうか。
ここで書いているのはパターン認識でとりあえず習う当たり前の手法なので、
コードとかもごろごろころがってると思うよ。
737 :
デフォルトの名無しさん :2008/07/04(金) 19:39:11
画像処理技術者の将来は明るいでしょうか?
将来タクシーの運ちゃんになりたいなら画像処理やればいいよ。
>>739 そうだけど、誰かに確認を手伝ってもらわないとだめですか、そうですか。
thanx!
メールってどうやって送ったらいいの?
そうか、読めもしないんだからそうなるわな。 でも、コードももらってもマニュアルも読めないし、 論文読んで中身が何をしているのかもわからないし、 使いこなせないんじゃない?
744 :
デフォルトの名無しさん :2008/07/06(日) 21:40:38
インターレースとプログレッシブのJpegを見分けるにはどうすればいいでしょうか。
画像ロードの瞬間、目をこらしてよくみろ
746 :
デフォルトの名無しさん :2008/07/07(月) 06:05:38
RGB以外の、CMYKやYUVなどのカラースペースのまま ブラーや半透明合成を行うアルゴリズムの情報源を教えてください!
RGBのときのそれらのアルゴリズムが線形演算でできていて RGBとCMYK、YUVの変換が線形に行えるなら 全体で線形性が保てているからアルゴリズムを線形変換するだけだよね。 (まあ結局RGBに戻して合成してることと理論上は同じにはなるけど) と思ったけどRGBとCMYKは線形じゃないのが多いだろうな。
748 :
741 :2008/07/07(月) 17:38:07
複数のjpg画像から動画を作るためのライブラリとかないでしょうか。 コマンドラインで実行する系で。
ffmpeg
誘導されてきました。マルチになりますが、アドバイスのほどよろしくお願いします。 現在テンプレートマッチングのプログラムを作っているのですが、 テンプレートマッチングでマッチングした部分の色を変えられず苦労しています。。 画像のある特定の範囲だけの色を変えるのってどうすればいいのでしょうか?
エスパーの登場を待つか詳細を書くかしましょうね。
753 :
751 :2008/07/12(土) 03:46:45
かなりつたないプログラムですが、途中まで書いてみます。 超初心者なので、根本から間違っているかもしれません。 テンプレートの左下と一致する1ドットだけ色変換が行われるので、マッチング自体はできてると思うのですが… int i,j,k,l,nx,ny,tmpnx,tmpny; nx=bmpInfoHeader.biWidth;//元画像の幅 ny=bmpInfoHeader.biHeight;//元画像の高さ tmpnx=bmpTmpInfoHeader.biWidth;//テンプレートの幅 tmpny=bmpTmpInfoHeader.biHeight;//テンプレートの高さ //相違度の計算(gray[]はグレースケール化した元画像の一次元配列、tmpgrayはグレースケール化したテンプレート画像の一次元配列) for(i=0;i<ny;i++){ for(j=0;j<nx;j++){ for(k=0;k<tmpny-1;k++){ for(l=0;l<tmpnx-1;l++){ d[i][j]=d[i][j]+(gray[i+k][j+l]-tmpgray[k][l])*(gray[i+k][j+l]-tmpgray[k][l]); } } } }
//テンプレートとマッチしたところ(相違度=0.0)の色を変換。image1は出力先の一次元配列。 for(i=0;i<ny;i++){ for(j=0;j<nx;j++){ if(d[i][j]==0.0){ for(k=i;k<tmpny;k++){ for(l=j;l<tmpnx;l++){ image1[3*(k*nx+l)]=255; image1[3*(k*nx+l)+1]=image1[3*(k*nx+l)+2]=gray[k][l]; } } }else{ image1[3*(i*nx+j)]=image1[3*(i*nx+j)+1]=image1[3*(i*nx+j)+2]=gray[i][j]; } } } }
「画像処理」の範疇とちょっと違うかもしれないけど質問です。 1つの凸多角形(頂点数4か5)と長方形が1つあり、 それらが部分的に重なるものとします。 このとき、重なった部分を表現する多角形の頂点を取り出すような、 何か一般的なアルゴリズムがあれば紹介して頂けないでしょうか。
756 :
755 :2008/07/12(土) 05:46:26
図形はビットマップではなくベクタとして処理されるため、 (x, y)を逐一調べて、両方の図形に含まれるかを調べる、 というような方法ではないものを探しています。
分野的には計算幾何学だな。 計算幾何学のスレは2chでは全く流行らないから、多分今は無いが。 っていうか、それは普通に交差判定するしかないと思うけど。 魔法のように計算式1つで求まるわけないだろう。
758 :
755 :2008/07/12(土) 06:12:47
あ、分かった。 1. 図形AとBの交差点を全て取り出す 2. Aに含まれるBの頂点を取り出す 3. Bに含まれるAの頂点を取り出す 1. + 2. + 3. = 取得すべき全頂点
>>755 maximaあたりで簡単にできそうだけどな
2つの3次元の線図形の類似性ってどうやって調べればいいのだろう 統計的な手法(平均や分散など)を使用できるのかな・・・
>>762 単純な形に分割して比較するとか、でっぱったところから特徴抽出するとか。
「3D similarity」でググると論文がでてくる。
単純に画素の算術平均取りたいけど _mm_sub_epi32()使うと以上に遅い うーーむ困ったのだ
>>765 何以上に遅いの?
そもそも_mm_sub_epi32()ってなに?
>>766 SSE2のPSUBDの、インテルC++コンパイラ風の記述かな?
インテルのコンパイラは勿論、 VC++やGCCでも使える組み込み関数だし、 割と一般的なんじゃね?
SSEネタとかは専門スレに逝くってのはどうだ?
だからそれが、画像処理と何の関係が? 一部のCPUに特化した最適化の話なら、そのCPUかそれ用のコンパイラのスレにでも行けばいいじゃん。
ここでいいよ
IPP買えばいいんじゃないかなっ
>>765 SSE2はsetとloadが遅いけど、本当に引き算が遅い?
>>774 VTune大先生がそのように指摘します
先生が間違うはずがありません。
高い値段するのに間違いを指摘するなんてありえません。
>>775 一命令単位でパフォーマンス見れるの?
ループしてんじゃないの?
画素の算術平均って具体的に何?
ある矩形内の平均?
平均に引き算ってどんな計算してるの?
>>776 775じゃないけど、平均で行う引き算と言えばこれじゃないかな。
ABCD
EFGH
IJKL
例えば上の矩形でFの画素を周囲の画素との平均値にする場合、
A+B+C+E+F+G+I+J+K (=X)って加算するでしょ。(で、割る。)
このXを保存しておけば隣のGの画素についてはB+C+D+F+G+H+J+K+Lって加算するより
X-(A+E+I)+D+H+Lという風にXを元に減算・加算したほうが計算が少なくなる。
>>776 vtuneは一命令単位の所要時間を見ることができるよ。
但し、パイプラインの制約だかなんだかで実際のアクセスが遅延している場合は
問題の(時間の掛かる)命令ではなく次の命令辺りで待ち時間が計上されることがある。
要は、>765はロード命令の次の引き算命令だけを見て遅いと言っていると思われる。
つまり、真に遅い原因はロードに起因するメモリアクセスってこと。
まぁ、vtune買うならIntelの講習も受けておけってこった。
SSE2でやるなら画素を16bitにして ABCDEFGHI JKLMNOPQR STUVWXYZ0 を a=load(ABCDEFGHI) b=load(JKLMNOPQR) c=load(STUVWXYZ0) a+=b a+=c store(a, m); として、m[]を計算するとか アライメントされた連続したメモリブロックを一度に読んで計算しないとパフォーマンスでない。
>>779 SSE2でstoreってどれつかえばいいの?
>>780 _mm_store_*で、*部分はデータ型による
整数なら_mm_store_si128
画像をキレイにする方法を色々調べて、逆フィルタ、ウィナーフィルタというのに 辿り着きました・・・。 人間が目を凝らすときにもこういう処理をしているのかもしれないですね。
いいえ。
画像処理でSSE2つかっても遅くね? あとさ なんでSSE2って8bit単位でシフト演算できないんだ? 16と32はあるのに
32bitCPUのレジスタは、16bitと32bitだからじゃない? ローレベルになるほど、ニーモニックに合わせてやらないといけない。 そういえば、Windowsも16bitを切り捨てたとき、動かなくなるソフト結構あったみたい。 64bitWindowsが主流になれば、そのうち32bitも切り捨てられるだろうし。
そうならないために.Netが作られたんだろ?
>>786 OSそのものが仮想マシンの上で動作しようかという時代に何を言ってるんだ。
でもスレ違いだから、そろそろやめような。
ゲームマシンはそのうち128ビットになるって10年以上前に聞いたけど なんでビット数は大きい方がいいの? もうなったの? パチンコ台も画像が増えたけど、あれは何ビット機使っている?
そりゃ一度に処理できる情報量が大きくなるからだろ. PCの場合は,互換性とか対応アプリケーションとかの問題で64bit化さえなかなか進まないが.
ビット数というのが、CPUの演算精度の事言ってるのか、バス幅のこと言っているのか… PCのGPUなんかは、384〜512ぐらいのバス幅を持っている。 これをもってきて、512bitマシンと呼ぶのか? rambusのDRAM-IF使ったらバス幅狭いので、ビット数が落ちるのか? (データ転送能力はむしろ高いぐらいなのだが)
特に指定しない場合は明らかに前者を指すだろ
そんなもん、128ビットもあったって屁の足しにもなりゃしねぇ
128ビットは今のところ要らないけど、64ビットは有難いよ。 データ幅が64ビットなんじゃなくて、アドレス空間が64ビットあることが重要。 巨大な画像処理とか超楽。もう32ビットプログラミングとかやりたくない。
最近、ゲートのコストが落ちてきてな。 8bitの乗算とかなら平気で500個ぐらいチップに入りそうな勢い。(最新ならね) 周辺回路等も入るから、そのまま実装できるわけでもないのだが、 バス幅多ければその分パラに処理して演算能力を高めることが可能… ここまできちゃうと、プログラムとかの世界ではないが。
>>794 それって、一枚の巨大な画像なのですか?
それとも一枚は普通の大きさだけど、連続した長〜いストリームなのですか?
動画じゃね
1画素0.1um四方で100mm*0.1mmの画像を16ビット諧調で作ったらそれだけで2GBになっちゃうからねぇ。 広いメモリ空間はあるに越したことないね。
2GBなんてたいしたことねーじゃん 4GBのメモリ1万で買える時代に
>>799 そーゆー問題じゃない。
アドレス空間が足りないんだっつってんだろが。
安いPCでも8GBや16GBくらい簡単につめる時代だからこそ問題になってるんだよ。
>>800 64bitOSで足りんの?
2GBって64bitOSで足りんわけねーだろがボケ
海水浴場でドザエモンになって二度と
地上に戻ってくるなボケ
分野によっては64 bit OSが必須というのは厳しいのかもね
>>803 短冊形に処理するんですよ。まさか、0.1umの画素で100mm平方なんて扱えませんから。
>>801 おまいはメモリ量とアドレス空間の違いが分からんのか・・・。
・・・残念だが俺は親切な人じゃないんで、もうこれ以上は付き合えないよ。
一人で空回りしててください。
>>805 は64bitOSならメモリ空間十分だろって言ってるんじゃね?
まあ64bitOSとかいいつつAMD64あたりはアドレス48bitで1TBとかだった気がするが。
>>805 お前の方が付き合いきれないだろ
仮に4GBx16あったとして64bitOSで何が不足する?
2GBのデータかメモリかしらんが扱おうとして
何が不足する言ってみろなぁ言ってみろ?
801(=807?)は酔っ払いなの?? 794以降の話の流れが読めてなくない??
32bitでは足りない 128bitは今のところオーバースペック 64bitマンセー という流れでおk?
>>801 の読解力のなさに噴いた。
さすが801は違うと思った。
811 :
デフォルトの名無しさん :2008/08/07(木) 15:09:40
>>811 いや、801の場合はそういう知識以前の問題だな。
誰一人として64ビットOSでは足りないなんて話してないのに、
いきなり出てきて一体どこに向かって噛み付こうとしてるのか言ってみろなぁ言ってみろ?
って感じだ。
FMスクリーンのアルゴリズム どっかに転がってないでしょか
実用的な日本語OCRソフトの情報はどこかにないでしょうか? 特に枠なしの手書き数字を認識したいのです
ソフト板で聞けよ・・・
>>814 のような質問をいつも不思議に思うな。
「手書き数字*認識」(* のところは space)でぐぐると一杯出てくる。
画像ファイルを連続で切り取り、を支援するソフトウェアってある? 矩形選択、ショートカットキー1つで、ぽんと保存(オリジナルファイル名+α)、 ショートカットキー1つで、次の画像にすぐ移れる。みたいな。
>>817 ググる能力ないなら作れ。ここはそういう場所。
>>818 ぐぐってみればわかるけど、汎用画像処理ソフトしか出てこないんだよね。
切り取りに特化していない。
絶対だれか研究用に作ってるとは思うんだけど。
目的は違うけど似たようなものは作った事があるから「ある」 >ぐぐってみればわかるけど 突っ込みどころ満載だな 2chなんか来ないで探偵でも雇うといいと思うよ
ソフトウェア板かなんかと間違ってるだけなんだろうが…。
>>817 IrfanViewで結構手軽にできると思うが。
親切にしてるつもりなんだろうが バカを構うことで板違いの話題引き伸ばすのやめてくれ
親切と言うより、過疎っているから保守兼ねてやってるだけ。
>>827 レスありがとうございます
うーんでも、やっぱりよく分からないのは
動画でみると、画像が少しずつ重なっていくところ。
(くちばしのところが最初に一致して、その後角度を調整しているように見える)
これも分かりやすくするためのパフォーマンスなんかなあ・・・
それともLK法のパラメータを少しづつ変えているとかあるのかなあ
830 :
デフォルトの名無しさん :2008/08/22(金) 18:56:05
あー、OCRとか作りたい。 実はこの前ムカつくことあったからケータイ用OCR作って出版不況を加速してやろうと 思ったんだよね。要は合法でクールなテロだよ。なんかヒッピー的な感じの。 いちおうアルゴリズムは考えてて、 ノイズレベル見ながら画像をボカして背景色を割り出してそれ考慮して減色して 連続領域をラベリングして文字領域のサイズ正規化して文字判定器に回して 多変量解析して主成分取り出してあらかじめ作っといた近傍主成分ツリーと マッチングして候補を出して文としての妥当性チェックをするわけだ。な、クールだろ? ただ問題が一つある。 だるい。
プログラムはともかく、なんたらツリーの辞書と文としての妥当性を 判定をするための辞書を作るのが大変そうだな。
だるいとか眠いとかカスの代表的ないいわけ
作った奴だけが褒められる世界だしな
作っても無いのに褒められる世界ってあるの?
え?無いと思ってるの?
あるのかと聞いている
ある
板違い
で、作っても無いのに褒められる世界の具体的な話は出せないんだろ?
無いと思っているのかと聞いている
出せないんだろ?具体的な話をよwwwしねよwwww
板違い
板違いとか言って逃げるのか?このヘタレヤロウが
板違い
板違い
妄想は広告の裏へ
847 :
デフォルトの名無しさん :2008/08/23(土) 13:08:43
作らなきゃ無意味 誰もほめんよ
え?無いと思ってるの?
スポーツはなんにも生産してないような
ま、そうだね。
851 :
デフォルトの名無しさん :2008/08/23(土) 15:22:26
広告効果 無形有形には関わりない
うん。
広告ってなんにも生産してないような
うん。
855 :
デフォルトの名無しさん :2008/08/23(土) 17:05:50
販売促進効果 少なくとも引きこもってるだけの人間よりは役に立ってるかも
画像処理 その10
せめて画像処理の分野内でなにも生産していないカスの話をしろ
何?悔しかったの?w
カスを批判するカスが集まってるカススレ
861 :
デフォルトの名無しさん :2008/08/23(土) 21:00:29
生産物も分からんようではプログラムに向いてないかもな
↑話を理解して無い馬鹿
話がそれすぎ
板違い
板違い
867 :
デフォルトの名無しさん :2008/08/24(日) 18:17:39
だってアウトプットがわかんないってことでしょ 致命的じゃん
↑話を理解して無い馬鹿
>>830 それと同じ内容のペーパーマシンの特許を、
30年以上前にファクシミリメーカーが出願しているのを
オレは特許調査で見かけたよ。リコーだったかな。
もちろん他社も同じことはいくらでも考えてる。
卒論で画像認識をやった学生も、普通に考え付く。
だからそういうネタレスなんでしょ
てか俺の携帯には既に実装されてる。辞書引きしか出来んけど。 便利な世の中になったもんだ。
CDのラベルのような印刷物を写真に撮ると、さらつき感のある画像になり StretchBitBlt()? だかで縮小すると、さらつきが強調される絵になる。 ところが、Vista のフォルダ表示の中のサムネイルは結構きれいな絵で 出てくる。どんな方法だから、キレイになるって分かりませんか。
SetStretchBltModeでHALFTONE指定してないだけとか? サムネイルみたいな縮小率の高い絵じゃLPFの特性差なんてでないだろうし。
どうでもいいが、「さらつき」って聞きなれない言葉だな。
"さらつき"は、"ざらつき"なのか"ちらつき"なのか 今回は前者の間違いだろうけど
876 :
872 :2008/08/26(火) 19:11:29
レスをありがとう。「ざらつき」って、カタカナだと「ザラツキ」。 こういうのをなんというのか知らないけど、ぐぐっていたら、そういう 書き方のがあったので、通じると思って書いた。 印刷物を接写すると、印刷のブツブツが撮れて、デカイ画面で見ると ブツブツが拡大される。これは仕方がないけで、小さい絵のときそれ がモアレのように出るってのが、なんとも不思議なんですよね。
エイリアスノイズや折り返し雑音でググれ
Lanczos 3
>>877 さん、
>>878 さん、すみません。
>>873 さんの"HALFTONE" を頼りに調べて、SetStretchBltMode() での指定を
COLORONCOLOR から HALFTONE に変えたら、縮小してもキレイな絵が出るよう
になりました。最近の API を見てなかったので、知りませんでした。
ありがとうございました。
SetStretchBltModeって結構古いAPIだと思うが…
>>880 Win98 のとき、猫でも・・・の粂井さんのコードで知って以来使っている
ものです。以後、ここはそのマンマでした。
HALFTONE でいけると分かったのですが、ぐぐって説明をみると、今年の
2月頃の書き込みもありますが、概して古いですね。画像の拡大縮小の
最近の定石って、どんなのか、いいサイトがありますか。
まるもたん
バカの一つ覚え
>>882 「まるも」でぐぐったら、AviUtil の plug in の説明があり、画像の拡大縮小での
>>878 さんの Lanczos 3 が出てきました。「まるも」のソースはちょっと解読に
時間がかかりそうです。しかし他でも JTrim というのがあり、それでリサイズを
試したら、Lanczos 3 の表示がありました。250% 拡大だとモザイクが分かるかなと
いうレベルで、イヤー面白いですね。
蛇足ですが、HALFTONE ってのはやや時間がかかる感じですね。
みなさん、有難うございました。
885 :
デフォルトの名無しさん :2008/08/31(日) 15:23:01
4bitや8bitのbitmapのカラー変換をVB2005でやりたいと考えてるんだけど、 各pixelのパレットインデックス読む ↓ そのパレットのカラーをToArgbする ここで得られたintegerからアルファ以外のRGB要素だけ取り出したい場合はどうしたらよいですか?
ビットシフト
ビットマスク
論理積
念力
ネタまがいの遊びが続いているんで、ToArgb てのをぐぐってみた。 Argb ってのが、AARRGGBB だったのネ。argument の略かと思ってた。 ToRgb というメソッドがあるといいのにね。
それくらい自分で作れるだろ
ヘボグラマの発想はそんなもんですよ
夏厨の残りカスでしょ
894 :
デフォルトの名無しさん :2008/09/02(火) 22:21:26
季節の変わり目は荒れるねえ
普段からだよ
荒れてるか?
ん?そうでもない? 荒らし足りなかったか
もっと頑張れ
今日はもう眠いからそのうちね 応援ありがとう
901 :
890 :2008/09/03(水) 07:42:33
>>885 の質問で昔話を思い出しんで、チラ裏だがマ聞いてくれ。
windows のアイコンは以前は 16色ばかりで稚拙だった。デジカメ写真の一部を
転用して簡単にアイコンに出来ないかとやってみた。減色してアイコン仕様の
ファイルにすればいいんで、マこれは一件落着。
ところが、最初ペイントでやってみたとき、ペイントが用意してくれる256色
パレットは使わない色も含まれる既成品。パレットを工夫すれば 16色でも
ある種の絵はきれいになるって気が付いた。1 bit color でもカラーになる。
以来、ico, cur, bmp ファイルを hex で見るようになって、パレットの部分
の右側の文字表示の欄は、文字を「■■」にしてこれに色をつけて表示する
ようにした。hex 編集を SJIS でやっていたときは、16桁英数字をこの
「■■」4つで置き換えるんでちょうどすっぽり嵌ってウマーだったのが、
UNICODE になってやたら面倒になって、これを使うのをやめてしまった。
おソマツ。
画像処理プログラムそのものの質問じゃないんだけど、 Max(R, G, B) と Min(R, G, B)を入れ替えるのってなんていう処理なの? あと、2値化処理で閾値と比較するときの輝度って R, G, Bの平均っていう説とMin(R, G, B)っていう説があってどっちがほんとなんですか?
ほんとも嘘もない より望ましい結果が得られる方を選択するだけの話
904 :
デフォルトの名無しさん :2008/09/04(木) 17:10:09
背景差分法の最も基本的な理論を教えてください! 理論式などあれば嬉しいです! 当方、画像処理については素人です、よろしくお願いします。
>>904 2枚の画像をそれぞれ正規化して差分をとるだけ。
各ドットごとに引き算した結果で画像を作って、場合によっては閾値でに二値化。
ググってもわからなかったんだとしたら、画像処理以前に勉強すべきことが山ほどあると思う。
自分で素人とか言う人って、俺はやる気は無いよと言ってるのと同じ
私は自分自身は客観的に見られるんです、 あなたとは違うんです。
>>906 それをここに書いて気持ちがよくなった?
>>904 みたいなのはぜんぜんOKだけどな
2chじゃないけど一番イラっとくるのはタイトルが「初心者です」の奴
>>905 で具体的なやりかたがでてるのにそのまま逃亡
輪郭検出に近いことをやりたいんだけど、ノウハウでも、参考資料でもいいので教えてください。 フルカラー画像の中に開曲線(ループしてない)が何本かあったとします。 その曲線は背景色と十分色or輝度が違うという条件だけで、背景色自体も場所によって異なるかもしれません。 曲線の太さは1ピクセルとは限りませんし、エッジが鋭くないかもしれません。 この曲線を追跡してピクセルの座標列を求めるアルゴリズムは無いでしょうか。
>>912 そんなキモイ複合条件を満たす ゆとり用のアルゴリズムは無い。
・背景色自体も場所によって異なるかもしれません→背景色を求める
・曲線の太さは1ピクセルとは限りません→細線化などの処理
・エッジが鋭くないかもしれません→エッジを鋭くする
・輪郭検出に近いこと→エッジを得る
・開曲線→エッジを追いかける
こんなふうにまず要求を分解しろ。しかるのちにぐぐれ。
分解できないほど無知なら本を読めばいい。
できればお勧めの本など教えてくれないでしょうか。
915 :
デフォルトの名無しさん :2008/09/09(火) 10:27:13
ある3Dの画像が与えられたときに略対称な面を求める場合 どのように考えればよいのでしょうか? 英語で略対称って何 symmetryっていうんだろう・・・
substantially symmetryってどういう意味?
略対称って何?
ぐぐっても少ししかひっかからんなあ。 使ってる分野の限られた用語なのか?
略対称 の検索結果 約 6,320 件 www.j-tokkyo.com での 略対称 の検索結果 約 6,120 件
不自然なほど特許だけで使われてるな
921 :
デフォルトの名無しさん :2008/09/10(水) 09:32:16
パターンマッチングに興味を持ち,趣味で画像の勉強をしている初心者で す。例えば,皆様のような専門性を持っている方は,次のような課題にど のようにアプローチされますか。私の興味の一つは,このような基本的そ うな問題に確立されたアルゴリズムが存在するかという点です。 宜しくお願いします。 画像A1・・・Anの中の一枚の画像から一部の画像S が切り出されてい る。画像S は回転されたり,拡大又は縮小されたりしている。画像S とその元画像を含む複数の画像A1・・・Anが与えられたとき,画像S を作成するために使用した元画像及び切り出し領域をできる限り高速 に特定するプログラムを作成せよ。
>>921 画像処理屋がプログラムができるかどうかを聞かれたら、まず「画像を見せてください」
と尋ねる。
画像が文字か顔か線画か道路の写真か木の写真か....でアプローチ法は全く異なる。
たとえば線画だと分かっても実際の画像の傾向によって処理内容は違ってくる。
923 :
921 :2008/09/10(水) 14:41:59
>>922 説明不足ですみません。
図形ではなく,写真(風景)を想定しています。
切り出す部分は風景の任意の一部(建物や,車,銅像,人,
あるいはそれらの一部)です。全ての画像に共通する傾向
は無いと考えてください(汎用性を持たせたいため)。
回転や拡大縮小といった一定の処理が施された写真の断片が
与えられたとき,そのオリジナルの写真を探すことが目的となります。
いわゆるパターンマッチングでしょ 「汎用性」が必要なら正規化相関を使ったサーチが一般的な回答になるんじゃないかな しかし高速に求めるための工夫は各社それぞれのノウハウで「確立」されているわけじゃないと思う 「出来るだけ早く特定するアルゴリズムは確立されていない。アイディア勝負でまだ間に合う!」 って感じかな
925 :
デフォルトの名無しさん :2008/09/10(水) 17:20:23
既存のパターンマッチングはテンプレートに問題があるね あと正規化相関は遅すぎて実用に向かない
>>923 類似画像検索ではなくて、オリジナルの写真から切り出したものが必ず検索対象になるの?
つまり人物や車の背景部分も同じかどうか。後者だと、イマイチ用途が不明だけど...
くどい
>>925 相関遅いね、相関
自然画でよーあるのは SHIFT特徴量だとか、コーナー検知する特徴量つかってのマッチングやね。
ググればいろんな特徴量でやった論文がくさるほどでてくるけど、実装したことないからわかんね。
SHIFTで検索できないとかわいそうなので、訂正すると"SIFT"ですね。 Scale-Invariant Feature Transformかな。 128次元だったかの特徴量がとれるので、 それをApproximately Nearest Neighbor法とかでデータベースから検索っていう実装なら見た。
オリジナルの写真から切り出しているのに正規化相関はないだろw
切り出しの大きさはどれくらいを想定してるんだろう。 元の風景写真のほんの一部とかだったら効率的な探索は相当難しそうだな。
部分切り出しだけでなく、その部分が変形されている場合、特に縮小されたら、 探しようがないでしょうね。 状態によっては人間が見てもマッチングが{難しい|できない}場合があるし。 もう少し条件を絞り込まないと、アプローチのしようがないように思えます。
>>932 SIFTならできる。名前に Scale-Invariant の文字があるだろう?
>>933 SIFTが画像のスケール変化や回転や輝度変化等であまり変わらない
特徴量が記述できるのは分かっているが、条件に制限がないと、
極端な話、部分的に切り出された領域が1ピクセルに縮小されたら
マッチングは無理じゃね? ということだろ。
ARでよく見かけるような追跡は可能かも知れないが無関係の画像の中から
それを抽出するのは物理的に考えて無理だろう。
>>934 そりゃあくまでもロバスト、としか言えんけど、
画像処理という曖昧さを表現せにゃならん分野でそんなこと言って、
だから無理。とか言ってたら先に進まんよ。
>>934 たとえばPhotosynthではSIFT使ってあるタグのついた写真をFlickrから持ってきまくって
3次元再構成するみたいなことやってるけど。
まあ、縮小っていっても程度問題でしょ。50%の縮小くらいならマッチングできるでしょ。
2000x2000が1000x1000とかならさ。
937 :
915 :2008/09/17(水) 14:11:31
>>920 そうなんですよね・・・
壷があったとしてどこか一部が欠けたり壊れたりしている部分があっても
左右が対称になる軸(面)が見つかるようにできないのかと考えていたのですが・・・
>>937 おまえは「略対称」という言葉をどこで知ったの?
本題から逸れて申し訳ないけど、単純に興味があるので。
線対称と違う言葉を使っていると言う事は3次元空間での欠陥認識なんですかね
940 :
デフォルトの名無しさん :2008/09/18(木) 13:40:41
どなたか、H.264について詳しい人いませんか? エンコードにおいて、ブロックの動き補償ベクトルの探索方法については規格化されていないのに 探索開始位置の決め方が規格化されている意味が分かりません。 分かる方いらっしゃいませんか?利用している書籍は「H.264/AVC教科書(インプレス出版)」です。 公式仕様書では8.4.1.3のセクションです。
>>940 ですが。
動きベクトル予測の意味を勘違いしました。
大変失礼しましたorz
簡単な画像処理アプリを作ることになりました。 どの言語でやろうか迷ってます。 こんなんです↓ tifを読む。(数百枚を一度に処理したい) ↓ 透かしを入れる ↓ tifで保存 C,C++,C#は一応使えます。 今のところC#でやろうと思ってます(作るのが簡単なので)が 速度が心配です。 大量処理だとC#は無謀ですかね?
サイズにもよるしかけていい時間と処理するマシンの能力にもよるが。 別にC#だからどうってレベルの話でもないだろう、その程度なら。 ピクセル毎の演算を自力で、となるとちょっと辛いかも知れんが。 最近のC#はGPUでどうにかできるんだっけ?
C#でもポインタ使えばCの半分くらいは速度出るんじゃないの
とりあえず作ってみて(速度に)問題があるようだったら、 画像処理の箇所だけCで作り直せばいい Cで組む場合にしてもアセンブラは最終手段 汎用ライブラリとして頒布するわけでもないし
>>942 どうでもいいが、数百枚を一度に処理するのではなくて1枚ずつ連続して数百枚処理するのだろ?
先ずはC#で作って処理時間を測るのが基本だな。
C#はピクセルにアクセスするメソッドがクソ遅いので 処理時間を気にするならやめたほうがいいよ。 バッチ処理なら動いておけばいいだろうけど。
遅いやり方を使わなければいいだろ
Bitmapをピクセル単位で操作したときはBitmap.LockBitsでunsafe。 用途にもよるがGraphices系メソッドの手法や考え方に一度しっかりなれることも大切だと思うよ。 透かし処理には向かないかもしれないが発想を転換すれば意外にいろんなことができる。
unsafe使うのは避けれないが、Cに近い速度は出るよ。 GUIまわりが楽に作れるのでC#が結局は一番楽だよ。
LockBitsは知っているけどバッドノウハウだと思っていた。 C#のピクセルデータへのアクセスはこれを使うのが常識なのか?
うぜえなこいつ おまえは遅いやり方でやってればいいじゃねえか
常識か非常識かなんて心の底からどうでも良いよ アンタの用途にGetPixel/SetPixelの速度が耐えられるかどうかだろ
非推奨な仕様だったとしたら質問者にむやみに薦めるのはよくないだろ。 ただこれはMSDNにも例があったので俺が間違っていたよ。
単なるいいがかりかよ 氏ねカス
(・∀・)クスクス
なんでバッドノウハウとか非推奨だと思ったんだろう。 どうでもいいけど。
こういう流れじゃないだろうか・・・? unsafe → 安全じゃない → 危険 → 使っちゃいけない
名前からしてgetPixel/setPixelだろ
なにを言ってんだおまえ
GetPixel()、SetPixel()を使うとかめみたいな遅さになるだろ 速度重視するならBitmapクラス、BitmapDataクラスを使って 画像データへの先頭ポインタをとる他ないだろ
何?今頃来たの?
966 :
942 :2008/09/24(水) 23:48:41
ためしにC#とCで作ってみました。 ポインタ使って、for文内でプロパティも使わず、ネイティブコードにして 最大限に速くしたつもりですが Cのが圧倒的に速かったです。
>>966 それは既知。問題はおぬしがそのC#コードの速度を許容できるか否かにすぎない。
OpenCVでいいだろ C#より機能そろってるし速いし GUIだけC#にしたらええやん
OpenCV OpenCVって馬鹿の一つ覚えみたいに言ってるやつはなんなのかね。 求めるすかし処理がOpenCVで出来る範囲だったらいいけど、出来なかったらC++/CLIで書いて ガッチャンコとかするしかないし。 つーかOpenCVだってCでの使用を前提としたライブラリなんだから結局配列を直接いじってなんか出来なきゃめんどくさくてしょうがないぞ。 なんかOpenCVが魔法みたいに思ってる人がたまにいて困る。
python.IML + python.ctypes + OpenCV 時々 python.numpy
C++でフリーで使える高速な補間ズームが出来るコードorライブラリない? 自分の環境で申し訳ないんだけど、目安としては 1GHzのCPUでQVGA→VGAのズームが10ms未満が目標。 ちなみに、StretchDIBitsだと12ms、自作プログラムが40ms掛かったorz
MMX/SSEあたり使えばPentiumM/800MHz相当で8ms台がででてるらしいが@自作コード つかCPUの種別やメインメモリの構成も指定しないで時間だけ言っても意味ねーだろ。
>>970 おまえOpenCVがなにかさえ分かってないだろ。
C++でOpenCVを使って画像に対する処理を書いてDLLにしてC#から呼び出せばいいだろ
(・∀・)クスクス
>>973 どうもです。
CPUはCore2Duoだけどシングルスレッドだから事実上PenMと同等。
ポインタでのアクセス方法を弄ったら25msまでは向上したけど、
C++で書く以上これ以上速くするのは難しそう…
ガッチャンコとかするしかなければガッチャンコすればいいんじゃん♪ 今度打合せで使ってみようかな VB6の資産とVC2008のDLLをガッチャンコするしかありませんっ!
よう相手にするよ、こんなの
982 :
972 :2008/09/26(金) 02:03:11
>>974 いいえ、週に3回はOpenCVのリファレンスを読んでいます。
じゃあ俺は日に3回はOpenCVのソースコードを読んでる。
一度も読んだことないし、これからも使うことはないだろう。
俺は日に3回はOpenCVをデバッグしてる
俺はIntel社員
じゃあ俺はIntelの清掃員