Opencvのcv2.threshold関数の使い方は何ですか?

OpenCVでは、画像のしきい値処理を行うためにcv2.threshold関数が使用され、画像のピクセル値が二値形式に変換されます。その使用方法は以下の通りです:

retval, thresholded_img = cv2.threshold(src, thresh, maxval, type)

パラメータ説明:

  1. 画像の入力
  2. thresh: 閾値
  3. maxval: しきい値を超えると、与えられる値
  4. 閾値処理のタイプは以下の通りです:cv2.THRESH_BINARY:閾値を超えたピクセルにはmaxvalが割り当てられ、それ以外のピクセルは0が割り当てられます
    cv2.THRESH_BINARY_INV:閾値を超えたピクセルには0が割り当てられ、それ以外のピクセルはmaxvalが割り当てられます
    cv2.THRESH_TRUNC:閾値を超えたピクセルはそのまま、それ以外のピクセルには閾値が割り当てられます
    cv2.THRESH_TOZERO:閾値を超えたピクセルはそのまま、それ以外のピクセルには0が割り当てられます
    cv2.THRESH_TOZERO_INV:閾値を超えたピクセルには0が割り当てられ、それ以外のピクセルはそのままです

戻り値:

  1. retval:実際に使用される閾値
  2. 閾値化された画像:処理された二値化画像

サンプルコード:

import cv2

img = cv2.imread('image.jpg', 0)  # 以灰度模式读取图像
retval, thresholded_img = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)

cv2.imshow('Thresholded Image', thresholded_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
bannerAds