ネットで気に入った画像を見つけて保存したり、ニコニコのzip戦争に参戦したりして、ひたすら画像ファイルが増えてきてるんですけど、特にzip戦争の戦利品等は重複画像が多いんですよね。
完全に同じファイルなら、UnDupとかで削除すれば良いんですけど、見た目同じでもjpgだったりpngだったりすると、UnDupじゃ対応しきれない訳で。
そういうときは類似検索ツールを使う訳で、いままではSimiPixを使ってました。
検索が速くて使いやすいんですが、画像数が多すぎるのでもうちょっと楽できないもんかと思ってたんですね。
つーわけで作ってみた訳です。
実行には.NET Framework2.0以上が必要。
ソースは今回も非公開。公開できないくらい汚いので。
検索速度はSimiPixにも負けてないと思うけど、SimiPixは画像展開しながらあの速度だから凄いよね。
SimiPixに無い機能としては、
・画像を拡大して確認する機能
・検索途中でストップできる。
・・・くらいです。
精度はSimiPixのほうが間違いなく高いと思う。つか私のアルゴリズムがいい加減すぎるんだけど。
今回のコレは自分で使うために作ってるので、前に作ったPhotoMosicやかもす付箋紙みたく作りきりじゃないと思う。
ま、公開したところで使うのも私だけなんだろうけど、公開するって決めることで、なるべく解りやすいインターフェースにしたりとか、細かいところの調整とかするようになるので。
以前作った、あるうpロダ専用DLツールなんかは公開する気ゼロで、画面には入力項目しかなくて文字情報まったくなしだったので、「あれ?ここってなにを入力するんだっけ?」と作った本人でも解らなくなったりしたので、さすがに最低限他人が見ても解るモノを作らないとね。と思った次第です。
今後の課題として、
・サブフォルダを見る/見ないチェック。
・類似度が高いほどリストの上にもってくる。
・一度検索した結果をDB化して、次回の検索を高速にする。
・条件によって勝手に削除リスト入り機能。
上2つ位はすぐに実装できるかな。
最終的に、このツールを機能の一部とした、画像管理ツールまで作りたいなと妄想してます。打倒ViX!とか大きく出てみる。
本気で打倒ViXするんなら、C#じゃなくてC++かDで組むことになるんだろうけど。・・・ムリだなぁ。