曲線を検出するにはどうすれば良いですか?

11 views (last 30 days)
shiomi
shiomi on 24 May 2023
Commented: Shunichi Kusano on 26 May 2023
私はMATLABを用いて画像解析を行っている者です。
画像対象としては、粒子と糸が画像内に映っています。
(下に参考画像として添付いたします。)
私はこの糸だけを取り出した画像を作成させたいと思っています。
そこで質問なのですが、この曲線を検出するプログラムがありましたら、
ご教示いただけないでしょうか。
また、その他の方法があればご指摘いただけますと幸いです。
以上、よろしくお願いいたします。

Accepted Answer

Shunichi Kusano
Shunichi Kusano on 24 May 2023
画像を拝見しますとそれなりにか細い線なのできれいに取り出すのは難しいかもしれませんが、まずは
fibermetric関数を使ってみてはいかがでしょうか。線状オブジェクトの強調に適しています。thickness次第で結果が大きく変わるので、線の細さに合わせて調整してみてください。
  2 Comments
shiomi
shiomi on 26 May 2023
ご返信ありがとうございます。
早速、ご提案いただいた関数を使用してみました。
以下添付した画像のように、取り出したい線部分のみならず
周りの粒子までも検出してしまうようです。
この関数は、線状のオブジェクトと共に粒子等の点が映っていると
上手く取り出すことはできないのでしょうか。
(私の知識、技術不足で申し訳ありません。)
thicknessの値は色々と変更してみましたが、同様な結果となりました。
Shunichi Kusano
Shunichi Kusano on 26 May 2023
周りのゴミみたいな点はモルフォロジー処理で取り除けるかと思います。
使えそうな関数
ですが、肝心の曲線部分もまとまって検出するのは難しく、局所的に見るとゴミみたいな検出の集合になると思うので、上記関数を使うと同様に消えてしまう部分が出てきます。fibermetricでできる限り強調しつつ、曲線本体が消えない程度にパラメータを加減して周囲のゴミを極力減らす感じになるかと思います。
また、途絶え途絶えでも検出できれば、bwskelで細線化したあとで、X,Y座標を抽出→欠損部分をinerp1関数で無理やり推定、みたいな方法はありかと思います。

Sign in to comment.

More Answers (0)

Categories

Find more on 幾何学的変換とイメージ レジストレーション in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!