サッカーコートの白線を抽出する


EIGHT
サッカーコートの白線を抽出する

次のようなサッカーコートの白線の部分を線分としてを抽出したい。

まず考えたのは、緑色か否かで判定して白黒画像にすることだ。白黒画像にすることで、線をより明確に可視化させることができ、その後エッジだけ抽出して線分判定をすればよいと考えた。
以下の2枚はそれぞれ白を白とし、白以外を黒とする2値画像と、緑を白にして緑以外を黒にする2値画像である。

これだけでも割と上手く線の可視化ができていそうなので、このままエッジ化して線分推定をした。

次に、同じ画像でlsdを用いた線分推定をした結果が下である。

見る限り、lsdの方が精度が高いことがわかる。

しかし、下の画像では上手く行かなかったこともあり、別の方法を模索することにした。

上のやり方では、緑とそれ以外、あるいは白とそれ以外というふうに画像の色の境界を分類していた。もし、”緑と白の境界”を取得できればもっと精度があがるのではないか?と考えた。
そこで、k-mean法により画像の各RGBから似ている色を抽出し、上書きすることにした。その結果が次である。

上の画像は5色で表現されている。そのうち3色が緑、2色が白となっている。
このように、画像を5色で塗り直し、そのうち白色のものだけを抽出すると下のようになる。

これにより、白線をより鮮明に抽出することに成功した。


株式会社ファントムへのお問い合わせ

群馬県でPythonを使ったAIやソフトウェアを開発している株式会社ファントムが運営しています。




    Related Articles

    Python

    変換できない文字が混ざった文字列をShift-JISに変換する

    テキストファイルやCSVファイルに書き出す時に文字コードをShift-JISに指定して書き出すとエラーになる場合があります。よく見るのが、-や を変換した時に出るエラーで\uff0dや\xa0と表示されます。 […]

    Posted on by press
    Django

    ダウンロードするファイルの文字コードを動的に変更

    ダウンロードするファイルの文字コードを動的に変更 ウェブアプリケーションの中でCSVやテキストファイルをダウンロードさせた時に文字化けが発生する事があります。使用する文字コードが決まっていれば予め固定してしまう事で文字化 […]

    Posted on by press

    最新情報をお届けします!

    メーリングリストに登録するとファントムの最新情報をお届けします

    お客様のメールアドレスを共有することはありません