delphi11 delphi-opencv-master cvLoadImage jpg转灰度 显示到Timage 详细代码
时间: 2023-12-14 07:03:53 浏览: 235
以下是使用 Delphi-OpenCV 库在 Delphi 11 中将 jpg 图片转换为灰度图像并显示在 TImage 组件上的详细代码:
```delphi
uses
OpenCV_Core, OpenCV_ImageProc, // Delphi-OpenCV 库单元
Vcl.Imaging.jpeg; // VCL 图像处理单元
procedure ConvertToGrayScale(const FileName: string; Image: TImage);
var
JPEG: TJPEGImage;
GrayImage: pIplImage;
begin
// 加载 JPEG 图像
JPEG := TJPEGImage.Create;
try
JPEG.LoadFromFile(FileName);
// 将 JPEG 图像转换为灰度图像
GrayImage := cvLoadImage(PAnsiChar(AnsiString(FileName)), CV_LOAD_IMAGE_GRAYSCALE);
// 将灰度图像显示在 TImage 组件上
Image.Picture.Assign(IplImageToBitmap(GrayImage^));
finally
cvReleaseImage(GrayImage); // 释放灰度图像内存
JPEG.Free;
end;
end;
```
使用方法和上一个示例代码相同。需要注意的是,Delphi-OpenCV 库中的函数返回的是指针类型的图像对象,需要通过 `^` 运算符取得实际的图像对象。此外,在使用完毕后需要手动释放图像对象的内存。
阅读全文
相关推荐

















