4月活動日記

ゆうき( @BASEBALLY15 )です^^

このページでは4月の活動を,
『ほぼ』毎日投稿しています.

【30日】『Pythonで輪郭検出の精度を向上する方法を調べました!』

今日で4月も最後ですね^^

今年はコロナウイルスの影響で大変な時期ですが,頑張りましょう!

昨日に,OpenCVを使って映像内の輪郭を検出しました.

その際に平滑化を行い,Canny法を使ったのですが,あまり精度が良くありませんでした.

そこで,今日は画像を読み込んだ後に,特定の範囲のRGB値のみを取り出してから,平滑化しました.

Python_RGB_Canny法

すると,昨日より抽出の精度が向上しました^^

しかし,映像内から輪郭を検出すると,ノイズや検出したい範囲外で誤検出が出てしまいます.

明日は,さらに検出精度が向上する方法を調べて実装します^^

それでは・・・

【29日】『Pythonで輪郭検出を試してみました!』

最近,C言語で画像内の輪郭を検出するためのコードを書いています.

ライブラリを使わずに検出することが目標なのですが,思ったより難しいです.

そこで,試しにPythonOpenCVを使うと上手く検出出来るのかを試してみました.

C言語で実装することが出来なかった『Canny法』を使ったのですが,数行で画像の輪郭を検出することが出来ました!

以下の写真がPythonで輪郭を検出したものです.

Python_Canny法

今日だけで,画像だけでなく映像からも輪郭を検出することが出来ました^^

ライブラリは本当に便利ですね!

それでは・・・

【28日】『研究レポートを作成しました!-輪郭検出-』

輪郭検出_レポート

今日は,今までの研究結果をレポートにまとめました.

上の画像にもある通り,約3000文字でまとめました!?

今まで,約2か月間独学でプログラミング学習をしてきて,

アウトプットの重要性を学んできたので,今回のレポートもスムーズに出来ました^^

やはり,日ごろから文字を書くことは大切ですね!

明日からは,画像の輪郭検出の精度を上げる方法を論文で調べ,

C言語で実装していきます!

それでは・・・

【27日】『Hilditchの細線化について深堀して調べました!』

昨日にC言語を使って,Hilditchの細線化の実装に成功しました.

しかし,仕組みを詳しく理解出来ていなかったので,

今日はとにかく仕組みを理解するために時間を使いました.

そもそも細線化について,サイトで調べていても,あまり詳しい説明が載っていないです・・・

サイトは誰でも投稿できるので,専門的な記事が少なくても仕方がないのかもしれませんね.

そこで,私は『Google Scholar』を使うことにしました!

Google Scholar
(画像をクリックすると『Google Scholar』に移動します.)

これを使うと,専門家や会社の研究者が発表した論文が無料で閲覧できます^^

大学生にはもってこいのツールですね!

大学生で研究のために論文を探しているなら,『Google Scholar』を使ってみてください^^

明日は,もっと論文を調べて,細線化について理解するぞ!

それでは・・・

【26日】『細線化に成功しました!』

昨日に輪郭を検出した画像を『大津の二値』を使って,白と黒の2色に分けました.

今回は,その画像を『Hilditch法』によって,細線化しました.

以下が,細線化に成功した画像です⤵

Hilditch法によって細線化した画像

細線化することで何がいいかって言うと,輪郭を一本の線として扱うことが出来るんです!

細線化しないと,輪郭の周辺にに何重もの線が重なり,画像認識で良い判定ができないみたいです・・・

この辺りは,まだまだ勉強不足です・・・

今後,『Hough変換』を使って,直線の検出を行う予定なので,今回学習した『Hilditch法』が役立つかもしれません^^

それでは・・・

【25日】『大津の二値化について学習+C言語で実装』

昨日に『CANNY法』をC言語で実装しようと考えていたのですが,ソースコードを解読することにつまづき断念・・・

そこで,他の方法を調べていると,『Hilditch法』という細線化処理技術があったので,こちらを採用しようと考えています.

この技術を使う前に,『二値化処理』を行う必要があり,今回は『大津の二値化』を使うことにしました.

大津の二値化を使う最大のメリットは,二値化する際のしきい値を自動で決めてくれるところです!

自分でしきい値を決める必要が無いので,複数の画像を使いたい時にこの方法が使えるのではないかと考えています.

(※映像から二値化処理を行う時にも大津の二値化が使えるのではないか!?・・・)

下に大津の二値化を使わなかった時と使った時の画像を載せておきます⤵

大津の二値化

大津の二値化を使うことで,より鮮明に輪郭が検出出来ていますね^^

明日は,いよいよ『Hilditch法』について学習します.

それでは・・・

【24日】『NMS処理とヒステリシスしきい値について学習』

・今日は,画像処理の輪郭検出で使われている『CANNY法』について勉強しました.

その中で,NMS処理ヒステリシスしきい値について出てきたので調べていたのですが・・・

様々なサイトで,説明は載っているのですが,C言語のソースコードが載っていませんでした.

そこで,他の方法を探していると,『Hilditch法』という方法を見つけました.

この方法を使うことで,二値化処理した画像を細線化することが出来るみたいです^^

詳しい内容は,明日調べます.

それでは・・・

【23日】『C言語 画像処理 ガウシアンフィルターでノイズ除去』

・昨日にソーベルフィルターを使って,画像の輪郭を検出しました.

検出結果を見てみると,予想以上にノイズが多いように感じました.

そこで,ノイズを除去する方法について調べていると,『ガウシアンフィルター』という除去フィルターがありました.

これを実際に使ってみると,下の画像のように,輪郭がより鮮明になりました!

ガウシアンフィルター+ソーベルフィルター

また,道路の白い部分(ノイズ)も少なくなっています^^

明日は,『ヒステリシスしきい値』と『NMS処理』について学習します.

それでは・・・

【22日】『西野亮廣エンタメ研究所に入会』

・今日は,前から気になっていた『西野亮廣エンタメ研究所』に入会しました^^

この研究所では,西野さんが考えるビジネスについて勉強します!

・プログラミング学習では,C言語を使って,画像処理を行いました^^

カラー画像をグレイ化し,ソーベルフィルターにかけることで輪郭を検出しました.

検出結果があまり良くないので,明日は平滑化フィルターを使って,ノイズ処理を行います.

それでは・・・

Q &A

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA