輪郭関係の機能を追加しました。
輪郭関係ってのは輪郭追跡と等濃度線と輪郭抽出の3つ。
あとは、ビューアらしく、キーボードの右・左で次の画像へ変更できたりするようにした。
ラベリングも作ったんだけど、これ結局使い道なさそうだからボツに。
表面上実行できないようになってます。
輪郭追跡は別に再帰的な処理しなくても、回りの画素調べてそれとなくした。
つまりただの飾りです。(・ω・)ノ
等濃度線抽出ってのは輪郭追跡だと、2値化画像しか対応してなかったから、まああるといいかなってことで。
使い方は、減色→階調化とかで少ない階調にしてから行うといいです。
さらに最適な2値化の閾値を求めるためにPタイル法と判別分析法も追加しておいた。
でも、Pタイル法と判別分析法だったら、判別分析法のほうが多分優秀。
この分析については減色→2値化したときのデフォルト値として利用することにしました。
Pタイル法も結局ボツなので表面上は実行できません。
輪郭抽出は1次微分・2次微分・Prewitt・Sobel・Kirsch・Robertsと
普通の教科書レベルを全部追加しておいた。(・ω・)ノ
Kirschが一番処理が複雑な分、一番綺麗に抽出できますね。
メキシカンハットっていうフィルタもあるんだけど、こっちは彫刻風画像への変換が主流なのかな。
輪郭抽出って結構大事な機能だと思うんだけど、これ軽視してるの多いと思う。
一応いろいろなアルゴリズムは出来るんだけど、抽出したら抽出しっぱなし。
利用者のこと考えてないと思う。
レイヤー機能付きのソフトなら、抽出しておいたから、
あとは自分でご自由に利用してください。って感覚なんだと思うんだけど。
というわけで、これもこだわって色々自分なりの設定をつけてみました。(・ω・)ノ
これぐらいかな。
あとは最適化とかバグ潰しとか?
あと、結局拡大縮小はGraphic2Dにまかせきりだけど、やっぱり実装してみたい夢はある。
まずX軸のみ補完拡大して、次にY軸をX軸から補完拡大って感じ。
ちょっと楽しそう。
ポスタリゼーションとかもプログラム内部に既に作ってはいるんだけどこれどうなんだろう。
ソラリゼーションとか面倒。画像の反転・回転はいるかな。
画像の反転・回転は使う人いるとして、色の反転やソラリゼーションとかは使う人いるのかな?
よくわかんない機能増えると、逆に使いづらくなったりすると思うんです。
ヒストグラムの平坦化は実装したいなあ。ダイナミックレンジの最大化とかも。
結局は自分が必要か不必要か、そのどちらかなんですね。
完成した画像処理のツールは、こちらから試すことが出来ます。
コメント