delphi11 Delphi-OpenCV ocv.highgui_c 图片转灰度
时间: 2023-12-14 17:02:34 浏览: 36
ocv.highgui_c是Delphi-OpenCV的高级用户界面库,主要用于图像处理中的显示和输入操作。如果您只需要将彩色图像转换为灰度图像,可以直接使用ocv.core_c和ocv.imgproc_c库中的相关函数。以下是一个示例代码:
```delphi
uses
ocv.core_c, ocv.imgproc_c;
procedure ConvertToGrayScale(const inputImg: pIplImage; const grayImg: pIplImage);
begin
cvCvtColor(inputImg, grayImg, CV_BGR2GRAY);
end;
// 使用示例
var
inputImg, grayImg: pIplImage;
begin
inputImg := cvLoadImage('input.jpg', CV_LOAD_IMAGE_COLOR);
grayImg := cvCreateImage(cvGetSize(inputImg), IPL_DEPTH_8U, 1);
ConvertToGrayScale(inputImg, grayImg);
cvSaveImage('output.jpg', grayImg);
cvReleaseImage(inputImg);
cvReleaseImage(grayImg);
end;
```
在上面的示例中,我们使用cvLoadImage函数从磁盘加载彩色图像,然后创建一个与输入图像尺寸相同的灰度图像。最后,我们使用ConvertToGrayScale函数将彩色图像转换为灰度图像,并使用cvSaveImage函数将输出保存到磁盘。请注意,我们必须使用cvReleaseImage函数释放我们创建的图像。