質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

1726閲覧

画像の白黒処理と座標の表示

mmjon

総合スコア2

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/10/08 04:40

数年前に,pythonを用いて,下図に示す画像の座標(?)を二枚目のような画像で表示させました.しかし,そのコードを忘れてしまい,途方に暮れています.現在色々調べているのですが,どのようなコードで表示させたのか見当がつきません.現在このようなコードを用いてますが,二枚目のような画像にはならないようです.
分かる方いましたらお願いします.

import

1import cv2 2from matplotlib import pyplot as plt 3 4img = cv2.imread('jwha11-1.jpg') 5gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 6 7corners = cv2.goodFeaturesToTrack(gray,10,0.01,10) 8corners = np.int0(corners) 9 10for i in corners: 11 x,y = i.ravel() 12 cv2.circle(img,(x,y),3,255,-1) 13 np.savetxt("contours4.csv", (x,y) , delimiter=",") 14 15plt.imshow(img),plt.show() 16

イメージ説明

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

何か少しでも「この処理を行った」みたいな記憶は無いのでしょうか?
完全に同じ結果になる処理を「絵の見た目」だけから復元するのはとても厳しい(ほぼ不可能な)話だと思います.


それはそれとして,
貼られている絵の雰囲気から「葉の画像から葉脈部を得る的な処理」かと見えるので,そういう方向で15分くらい考えてみた内容を以下に記述します.
(結果も異なりますので正当な回答とはなり得ませんが,何か記憶を呼び覚ますヒントになるかもしれないので.)


(1)葉脈を残した二値化をすることに関して

まず,葉脈とそれ以外の部分の輝度差に着目し,適応的二値化を用いることを考えました.
背景に関しては「緑か否か」でざっくりと除去することで,以下の結果となりました.
(結果例を作成する際,入力画像は適当なサイズにあらかじめ縮小したものを用いました.)
イメージ説明
とりあえず葉脈が概ね残っている結果が得られていると思います.
(葉っぱの輪郭が残っているのは適応的二値化を用いたことによる副作用であり,本質的ではありません.
どちらかと言えば,葉の輪郭付近の葉脈が得られないという問題があると言えます.)

この状態から,例えば適当に細かい島を除去するなりすれば,質問で提示されている結果画像に近づけることはできるのではないかと思います.(そこまでは実際にやってはいません)

(2)横方向の葉脈を無視することに関して

質問で提示されている結果画像では,葉脈のうち「横に走っているような細かいものは検出しない」ような工夫が成されているように見えますが,そのことがどのような方法によって達成されているのかを推測することができませんでした.

簡単に輝度勾配方向を見ることによって(1)の結果からいくらか白の部分を減らしてみるとこんな結果になりましたが,必要な葉脈部分も失われてしまっています.
イメージ説明

投稿2020/10/08 08:46

fana

総合スコア11658

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問