Python版:OpenCV提供了众多图像处理算子和函数,涵盖了各种任务和技术。以下是OpenCV中一些常用的50个算子和函数:
cv2.imread:用于读取图像文件。cv2.imshow:用于显示图像。cv2.imwrite:用于保存图像。cv2.cvtColor:用于颜色空间转换。cv2.split:将多通道图像拆分为单通道。cv2.merge:将多个单通道图像合并成多通道。cv2.resize:用于调整图像大小。cv2.flip:用于翻转图像。cv2.rotate:用于旋转图像。cv2.GaussianBlur:应用高斯模糊。cv2.Canny:执行Canny边缘检测。cv2.Sobel:用于Sobel边缘检测。cv2.Laplacian:用于Laplacian边缘检测。cv2.threshold:应用阈值二值化。cv2.adaptiveThreshold:应用自适应阈值二值化。cv2.contour:查找图像中的轮廓。cv2.drawContours:绘制轮廓。cv2.findContours:查找轮廓并标记。cv2.moments:计算图像的矩。cv2.matchTemplate:模板匹配。cv2.HoughLines:使用霍夫变换检测直线。cv2.HoughCircles:使用霍夫变换检测圆。cv2.warpAffine:应用仿射变换。cv2.getPerspectiveTransform:获取透视变换矩阵。cv2.warpPerspective:应用透视变换。cv2.erode:腐蚀操作。cv2.dilate:膨胀操作。cv2.morphologyEx:形态学操作。cv2.filter2D:应用自定义卷积核。cv2.add:图像相加。cv2.subtract:图像相减。cv2.multiply:图像相乘。cv2.divide:图像相除。cv2.bitwise_and:按位与操作。cv2.bitwise_or:按位或操作。cv2.bitwise_not:按位取反操作。cv2.bitwise_xor:按位异或操作。cv2.calcHist:计算直方图。cv2.equalizeHist:直方图均衡化。cv2.connectedComponents:图像连通组件分析。cv2.putText:在图像上绘制文本。cv2.addWeighted:图像加权叠加。cv2.resize:调整图像大小。cv2.getAffineTransform:获取仿射变换矩阵。cv2.getRotationMatrix2D:获取旋转变换矩阵。cv2.getPerspectiveTransform:获取透视变换矩阵。cv2.line:绘制线条。cv2.rectangle:绘制矩形。cv2.circle:绘制圆。cv2.ellipse:绘制椭圆。
对应的C++版本:
以下是上述50个OpenCV函数的C++对应函数名称:
cv2.imread:cv::imreadcv2.imshow:cv::imshowcv2.imwrite:cv::imwritecv2.cvtColor:cv::cvtColorcv2.split:cv::splitcv2.merge:cv::mergecv2.resize:cv::resizecv2.flip:cv::flipcv2.rotate:通常使用cv::getRotationMatrix2D和cv::warpAffine来实现旋转。cv2.GaussianBlur:cv::GaussianBlurcv2.Canny:cv::Cannycv2.Sobel:cv::Sobelcv2.Laplacian:cv::Laplaciancv2.threshold:cv::thresholdcv2.adaptiveThreshold:cv::adaptiveThresholdcv2.findContours:cv::findContourscv2.drawContours:cv::drawContourscv2.findContours:cv::findContourscv2.moments:cv::momentscv2.matchTemplate:cv::matchTemplatecv2.HoughLines:cv::HoughLinescv2.HoughCircles:cv::HoughCirclescv2.warpAffine:cv::warpAffinecv2.getPerspectiveTransform:cv::getPerspectiveTransformcv2.warpPerspective:cv::warpPerspectivecv2.erode:cv::erodecv2.dilate:cv::dilatecv2.morphologyEx:cv::morphologyExcv2.filter2D:cv::filter2Dcv2.add:cv::addcv2.subtract:cv::subtractcv2.multiply:cv::multiplycv2.divide:cv::dividecv2.bitwise_and:cv::bitwise_andcv2.bitwise_or:cv::bitwise_orcv2.bitwise_not:cv::bitwise_notcv2.bitwise_xor:cv::bitwise_xorcv2.calcHist:cv::calcHistcv2.equalizeHist:cv::equalizeHistcv2.connectedComponents:cv::connectedComponentscv2.putText:cv::putTextcv2.addWeighted:cv::addWeightedcv2.resize:cv::resizecv2.getAffineTransform:cv::getAffineTransformcv2.getRotationMatrix2D:cv::getRotationMatrix2Dcv2.getPerspectiveTransform:cv::getPerspectiveTransformcv2.line:cv::linecv2.rectangle:cv::rectanglecv2.circle:cv::circlecv2.ellipse:cv::ellipse