gpt4 book ai didi

c++ - OpenCV imwrite 不保存图像

转载 作者:太空宇宙 更新时间:2023-11-03 23:05:19 26 4
gpt4 key购买 nike

我使用的是 Basler 相机,我正在尝试使用 OpenCV 保存抓取的图像。然而,当我尝试使用 imwrite() 时,出现了这个错误:

imwrite_('C:/Users/Uporabnik/Desktop/slika.png'): 无法写入数据:未知异常

我对抓取图像的转换:

openCvImage = Mat(image.GetHeight(), image.GetWidth(), CV_16U, (uint8_t *)image.GetBuffer());

正在尝试保存图片:

cv::imwrite("C:/Users/Uporabnik/Desktop/slika.png", openCvImage);

最佳答案

我也在用basler相机。您还需要共享包含basler配置的代码。以下是我如何使用basler相机以opencv格式获取帧:

#include <pylon/usb/BaslerUsbInstantCamera.h>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <pylon/PylonIncludes.h>

using namespace std;
using namespace cv;
using namespace Pylon;
using namespace GenApi;
using namespace Basler_UsbCameraParams;

int main()
{
Mat openCvImage;
Pylon::PylonAutoInitTerm autoInitTerm;
CBaslerUsbInstantCamera camera(CTlFactory::GetInstance().CreateFirstDevice());
CImageFormatConverter formatConverter;
CPylonImage pylonImage;

camera.MaxNumBuffer = 1;
formatConverter.OutputPixelFormat= PixelType_BGR8packed;
camera.StartGrabbing( c_countOfImagesToGrab);
const uint8_t *pImageBuffer = (uint8_t *) ptrGrabResult->GetBuffer();
formatConverter.Convert(pylonImage, ptrGrabResult);
openCvImage= cv::Mat(ptrGrabResult->GetHeight(), ptrGrabResult>GetWidth(), CV_8UC3, (uint8_t *) pylonImage.GetBuffer());

imshow("Basler Frame",openCvImage);
waitKey(0);
return 0;
}

但首先你需要使用“imshow”功能来查看图像。如果可以,则问题出在您的目录部分。否则,您需要共享有关启动 basler 相机的代码。

关于c++ - OpenCV imwrite 不保存图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57902158/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com