おもしろそう、Javaで画像検索
id:audioswitchさんとid:nowokayさんのブログで取り上げられている、画像検索関連の話題について`
そのうち、手を出そうと思う。
OpenCVもあわせてなんか作るつもり。
■あんまネットやらないのにWeb系の研究やってるっていうwww
二次元画像の特徴ベクトルで、Color Cohrence Vector(CCV)というのがあります。
Comparing Images Using Color Coherence Vectors
http://www.cs.cornell.edu/~rdz/Papers/PZM-MM96.pdfGregさんたちによって、10年以上前に提案された手法ですが、最近の論文でもその名前を見かけます。
画像の特徴ベクトルとして、色ヒスグラムがあります。
色ヒストグラムでは、画像中の色の出現頻度を見ます。
そのため、赤いシャツと赤い花は似ているなどとなってしまいます。
また、青色が中央に集中しているなどの、空間的な情報を捉えることはできません。
それに対してCCVは、似ている色が密になっているか疎になっているかを表し、
色の情報と空間的な情報を共に捉えることができます。
Color Coherence Vectorを実装してみた
■[Java][機械学習]Color Coherence VectorをJavaで実装してみた
http://d.hatena.ne.jp/nowokay/20081007
■[Java][機械学習]Color Coherence Vectorで画像検索を作ってみた
http://d.hatena.ne.jp/nowokay/20081008#1223496501
ということで、昨日のColor Coherence Vector使って、似た画像を検索するプログラム作ってみた。
ちょっと簡単に似た画像を求めたいときには、なかなかよさげ。
■[java][機械学習]画像同士の距離がとれたら近い画像マップができるよね
http://d.hatena.ne.jp/nowokay/20081009#1223499803
CCVで画像同士の距離が取れたってことは、画像同士どれが近いかというマップができるよね。
■QRコードのデコードもJavaでできるらしい。
http://blog.livedoor.jp/dankogai/archives/50789549.html