OpenCV预了解
图像处理库的学习
cv2 是 OpenCV 的 Python 接口库,提供了大量图像处理和计算机视觉功能。以下是 OpenCV 中的一些常用 cv2 模块和函数列表:
图像读取和写入
cv2.imread(filename, flags):读取图像文件cv2.imwrite(filename, img):保存图像到文件cv2.imdecode(buf, flags):从内存缓存中解码图像cv2.imencode(ext, img):将图像编码成内存中的指定格式
图像显示和窗口操作
cv2.imshow(winname, mat):在窗口中显示图像cv2.waitKey([delay]):等待按键输入cv2.destroyWindow(winname):销毁指定窗口cv2.destroyAllWindows():销毁所有窗口
图像几何变换
cv2.resize(src, dsize, ...):调整图像大小cv2.warpAffine(src, M, dsize, ...):仿射变换cv2.warpPerspective(src, M, dsize, ...):透视变换cv2.getRotationMatrix2D(center, angle, scale):获取旋转矩阵cv2.flip(src, flipCode):图像翻转
图像绘图函数
cv2.line(img, pt1, pt2, color, thickness, ...):画直线cv2.rectangle(img, pt1, pt2, color, thickness, ...):画矩形cv2.circle(img, center, radius, color, thickness, ...):画圆cv2.putText(img, text, org, fontFace, fontScale, color, thickness, ...):在图像上绘制文字
图像颜色空间转换
cv2.cvtColor(src, code):颜色空间转换cv2.split(src):将图像分离成各个颜色通道cv2.merge(mv):将颜色通道合并
边缘检测与轮廓检测
cv2.Canny(image, threshold1, threshold2):Canny 边缘检测cv2.findContours(image, mode, method):查找图像轮廓cv2.drawContours(image, contours, contourIdx, color, ...):绘制轮廓
阈值操作
cv2.threshold(src, thresh, maxval, type):图像阈值化cv2.adaptiveThreshold(src, maxValue, adaptiveMethod, thresholdType, blockSize, C):自适应阈值
滤波与图像平滑
cv2.GaussianBlur(src, ksize, sigmaX, ...):高斯模糊cv2.medianBlur(src, ksize):中值模糊cv2.bilateralFilter(src, d, sigmaColor, sigmaSpace):双边滤波cv2.blur(src, ksize):均值模糊
图像直方图
cv2.calcHist(images, channels, mask, histSize, ranges):计算直方图cv2.equalizeHist(src):直方图均衡化
形态学操作
cv2.erode(src, kernel, iterations):腐蚀cv2.dilate(src, kernel, iterations):膨胀cv2.morphologyEx(src, op, kernel, ...):形态学变换(开运算、闭运算等)
特征检测与匹配
cv2.SIFT_create():创建 SIFT 特征检测器cv2.ORB_create():创建 ORB 特征检测器cv2.BFMatcher_create():创建暴力匹配器
视频操作
cv2.VideoCapture(index):创建视频捕获对象cv2.VideoWriter(filename, fourcc, fps, frameSize):创建视频写入对象cv2.VideoCapture.read():读取视频帧cv2.VideoCapture.release():释放视频捕获对象cv2.VideoWriter.release():释放视频写入对象
图像金字塔
cv2.pyrUp(src, dstsize, ...):向上采样cv2.pyrDown(src, dstsize, ...):向下采样
其他常用操作
cv2.addWeighted(src1, alpha, src2, beta, gamma):图像加权求和cv2.absdiff(src1, src2):计算两图像差异的绝对值cv2.bitwise_and(src1, src2, ...):按位与操作cv2.bitwise_or(src1, src2, ...):按位或操作cv2.bitwise_not(src, ...):按位取反
这个列表并非完整的 cv2 函数集,但包含了常用的图像处理和计算机视觉函数。如果你需要查看详细的所有函数列表,可以使用以下命令:
这样可以查看 cv2 模块中所有函数的详细说明。
Last updated