ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript 画像処理 - 閾値関数の例 application_javascript スキル
前回の記事では、画像処理における明るさとコントラストの変化について説明しましたが、今回は閾値関数を作成します。
最も単純な画像分割方法
しきい値処理は、最も単純な画像セグメンテーション方法です。
たとえば、下の写真からリンゴをセグメント化するには、前景と背景の間のグレースケールの差を使用してしきい値を設定します。ピクセルがこのしきい値より大きい場合、黒で表示されます。しきい値より小さい場合は、灰色で表示されます。
5つの閾値タイプ
OpenCV と同様に、使いやすいように 5 つのしきい値タイプを提供します。
以下は元の画像の波形表現です。縦軸はピクセルのグレー値を表し、青い線はしきい値のサイズを表します。
バイナリしきい値式は次のとおりです:
画像表現は次のとおりです:
閾値を超えた場合は最大値(つまり255)となり、それ以外の場合は最小値(つまり0)となることがわかります。この関数を実装するには関数が必要です:
式は次のとおりです:
texttt{thresh}$}{texttt{maxVal}}{otherwise}" src="http://files.jb51.net/file_images/article/201301/2013010314344055.png">
これは逆で、閾値を超えた場合は最小値となり、そうでない場合は最大値となります。関数の実装は次のとおりです:
式は次のとおりです:
texttt{thresh}$}{texttt{src}(x,y)}{otherwise}" src="http://files.jb51.net/file_images/article/201301/2013010314344057.png" >
これは、しきい値を超えると切り捨てられることがわかります。関数の実装は次のとおりです:
式は次のとおりです:
画像表現は次のとおりです:
この場合、閾値より小さい値はすべて0となります。関数の実装:
画像表現は次のとおりです:
コードをコピーします
コードは次のとおりです。 :
コードをコピー
コードは次のとおりです。