日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

adaptiveThreshold函数

發布時間:2025/4/16 编程问答 7 豆豆
生活随笔 收集整理的這篇文章主要介紹了 adaptiveThreshold函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

adaptiveThreshold函數

函數作用:

運用自適應閾值分割對圖像進行處理

函數調用形式:

C++:?void?adaptiveThreshold(InputArray?src, OutputArray?dst, doublemaxValue, int?adaptiveMethod, int?thresholdType, int?blockSize, double?C)

src
輸入圖像.
dst
輸出圖像.
max_value
使用 CV_THRESH_BINARY 和 CV_THRESH_BINARY_INV 的最大值.
adaptive_method
自適應閾值算法使用:CV_ADAPTIVE_THRESH_MEAN_C 或 CV_ADAPTIVE_THRESH_GAUSSIAN_C (見討論).
threshold_type
取閾值類型:必須是下者之一
  • CV_THRESH_BINARY,
  • CV_THRESH_BINARY_INV
block_size
用來計算閾值的象素鄰域大小: 3, 5, 7, ...
param1
與方法有關的參數。對方法 CV_ADAPTIVE_THRESH_MEAN_C 和 CV_ADAPTIVE_THRESH_GAUSSIAN_C, 它是一個從均值或加權均值提取的常數(見討論), 盡管它可以是負數。

函數 cvAdaptiveThreshold 將灰度圖像變換到二值圖像,采用下面公式:

threshold_type=CV_THRESH_BINARY: dst(x,y) = max_value, if src(x,y)>T(x,y)0, otherwisethreshold_type=CV_THRESH_BINARY_INV: dst(x,y) = 0, if src(x,y)>T(x,y)max_value, otherwise

其中 TI 是為每一個象素點單獨計算的閾值

對方法 CV_ADAPTIVE_THRESH_MEAN_C,先求出塊中的均值,再減掉param1。

對方法 CV_ADAPTIVE_THRESH_GAUSSIAN_C ,先求出塊中的加權和(gaussian), 再減掉param1。

opencv代碼:

#include "StdAfx.h" #include <cv.h> #include <highgui.h> #include <math.h> IplImage* Igray = 0; IplImage* It = 0; IplImage* Iat; void main() { Igray = cvLoadImage("lena.png", CV_LOAD_IMAGE_GRAYSCALE); It = cvCreateImage(cvSize(Igray->width, Igray->height),IPL_DEPTH_8U, 1); Iat = cvCreateImage(cvSize(Igray->width, Igray->height),IPL_DEPTH_8U, 1); cvThreshold(Igray, It, 150, 255,CV_THRESH_BINARY); cvAdaptiveThreshold(Igray, Iat, 255, CV_ADAPTIVE_THRESH_MEAN_C, CV_THRESH_BINARY, 3, 5); cvNamedWindow("orignal", 1); cvNamedWindow("threshold", 1); cvNamedWindow("adaptiveThresh", 1); cvShowImage("orignal", Igray); cvShowImage("threshold", It); cvShowImage("adaptiveThresh", Iat); cvWaitKey(0); cvReleaseImage(&Igray); cvReleaseImage(&It); cvReleaseImage(&Iat); cvDestroyWindow("orignal"); cvDestroyWindow("threshold"); cvDestroyWindow("adaptiveThresh"); }

總結

以上是生活随笔為你收集整理的adaptiveThreshold函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。