本菜鸟偶尔遇到视觉方面的问题,发现opencv一些函数蛮好用的,记在这里长点印象:
1. findContours() 寻找连续区域:在图像处理中,常常需要检测有相同颜色的像素块。这些连续像素块周围的界限被称为轮廓。OpenCV 中有一个 findContours() 函数,可以被用来检测这些连续区域。
栗:contours = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
2. drawContours(),画出轮廓,一般和findCountours()一起使用.
把img转换成纯黑白(这叫做 thresholding)也是有函数实现的,如:
thresh = cv2.threshold(image, 0, 255, cv2.THRESH_BINARY_INV | cv2.THRESH_OTSU)[1]
3. cv2.threshold() 函数可实现将img转纯白、黑。
4. minAreaRect() 获取包住所有像素点的最小矩阵
栗:rect = cv2.minAreaRect(contours[0])
5. findHomography() 函数, 计算两个平面(两组坐标)间的单应矩阵,即一个平面到另一个平面的投射关系。