中心部に近い最も近い要素の範囲を抽出したい
任意の画像に対し、中心部に近い要素の範囲を取得したいと考えています。
環境はjavascriptを中心としたもので実現したいと考えています。
私は、プログラマーや画像解析の専門でもありませんが、自分なりに調べ
このようなロジックでできるのではないかと思ったのが以下の説明です。
図の説明
切り抜き範囲を取得したいのは左上図の中心の赤丸になります。
(切り抜きは範囲は長方形)
1.まずは画像を二値化(二階調)にすることで、要素(黒)と要素ではない部分(白)に分けます。
2.青い☓は中心点の把握の為に表示しています。次に
2-1 黒に干渉されない縦横の走査線(水色)をひき、9つに要素分けされたうち、中心要素の範囲(緑)を取得。
もしくは、
2-2 中心要素の領域を割り出し、その頂点を取得する
で、目的を達成させたいと考えています。
1.部分はcanvasなり、openCV.jsという技術でできそうな気がします。
問題は2.でして、
画像を解析 ▶ 中心要素を認識 ▶ 範囲を取得
これに関しては手段がわかりません。
どなたか、わかりやすくご教授いただけましたら幸いです。
実現させるための環境
HTML/Canvas/SVG
javascript
JQuery
OpenCV.js系
PHP(可能であれば避けたい)
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/27 09:56
回答4件
0
ベストアンサー
- ラベリングして、各図形の重心を求める。
- 各重心で中央に一番近いものをターゲットとする
3 ターゲットの色をしらべる
な感じだと思いますが問題も。
凹んだ図形だと重心が図形の外になるかも→重心だからはみ出る可能性は有りますよね。凹図形で図形からはみ出ない点で何か適切なもの有るんですかね?
投稿2018/07/27 00:40
編集2018/07/27 01:23総合スコア2826
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/27 09:55
2018/07/27 10:12
2018/07/27 10:23
2018/07/27 10:24
2018/07/27 12:57
2018/07/27 13:08
2018/07/28 06:07
2018/07/31 06:22
2018/08/01 02:01
2018/08/01 04:38
2018/08/01 06:38 編集
2018/08/02 01:42
2018/08/02 09:26 編集
2018/08/03 10:33 編集
0
二値化出来たなら、黒色の上に切り取る中心があるなら塗りつぶし検索すれば左上と右下は簡単に出せると思います。
白色の上に中心がある場合は、同じように塗りつぶし検索で、中心からの距離が最も近い黒色を検索すれば切り取り対象は見つけられます。
作って欲しいだけって質問じゃないですよね?
投稿2018/07/26 10:18
総合スコア422
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/26 10:38
2018/07/27 09:58
2018/08/02 09:29
2018/08/03 10:35
0
opencv4nodejsでnode.js版があります。
これを使うのが楽そうです。説明を読むとopencvのver3.4です。
サーバーサイドでjavascriptを動かすのかクライアントで動かすのか考えてください。
- サーバーに画像を上げて処理させるのか、各pcで処理させたいか。
クライアントサイドで動かすなら、browserify
について調べてみて下さい。
Browserifyの使い方について調べてみた - yutaponのブログ
npmとbrowserifyを使ったクライアントサイドのウェブアプリ開発 | Web Scratch
賢く使うBrowserify - Browserifyとは | CodeGrid
使い方は別の質問であげたほうがいいと思います。
私は詳しくないんで、もっと詳し人が助けてくれると思います。
投稿2018/07/30 11:11
編集2018/07/30 15:45総合スコア2826
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/30 12:48
2018/07/30 14:11
0
投稿2018/07/27 13:40
総合スコア2826
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/28 06:10
2018/07/28 08:14
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。