检查图像是否有效(损坏)javaCV
Check if an image is valid(corrupted) javaCV
我有一个包含图像的目录和子目录列表。我正在使用 JavaCV 来读取所有图像,并使用 cvShowImage 来显示这些图像。我正在使用 listFilesForFolder 函数读取文件。我的问题是这些文件夹中的某些图像无效(已损坏)。因此我收到 Opencv 异常错误:
OpenCV Error: Null pointer () in cvReleaseImage, file ..\..\..\..\opencv\modules\core\src\array.cpp, line 2983
Exception in thread "main" java.lang.RuntimeException: ..\..\..\..\opencv\modules\core\src\array.cpp:2983: error: (-27) in function cvReleaseImage
at org.bytedeco.javacpp.opencv_core.cvReleaseImage(Native Method)
如果图像有效(损坏)或无效,我如何检查我的代码以继续我读取所有图像的 for 循环?我正在使用以下函数来读取图像:
public IplImage openImage(String name) {
IplImage img = cvLoadImage(name);
cvShowImage("hello", img);
cvWaitKey();
cvReleaseImage(img);
return img;
}
当我运行程序时,我在 cvReleaseImage(img) 行遇到问题。
您必须检查图像是否 null
。
public IplImage openImage(String name) {
IplImage img = cvLoadImage(name);
if(img != null)
{
cvShowImage("hello", img);
cvWaitKey();
cvReleaseImage(img);
}
return img;
}
我有一个包含图像的目录和子目录列表。我正在使用 JavaCV 来读取所有图像,并使用 cvShowImage 来显示这些图像。我正在使用 listFilesForFolder 函数读取文件。我的问题是这些文件夹中的某些图像无效(已损坏)。因此我收到 Opencv 异常错误:
OpenCV Error: Null pointer () in cvReleaseImage, file ..\..\..\..\opencv\modules\core\src\array.cpp, line 2983
Exception in thread "main" java.lang.RuntimeException: ..\..\..\..\opencv\modules\core\src\array.cpp:2983: error: (-27) in function cvReleaseImage
at org.bytedeco.javacpp.opencv_core.cvReleaseImage(Native Method)
如果图像有效(损坏)或无效,我如何检查我的代码以继续我读取所有图像的 for 循环?我正在使用以下函数来读取图像:
public IplImage openImage(String name) {
IplImage img = cvLoadImage(name);
cvShowImage("hello", img);
cvWaitKey();
cvReleaseImage(img);
return img;
}
当我运行程序时,我在 cvReleaseImage(img) 行遇到问题。
您必须检查图像是否 null
。
public IplImage openImage(String name) {
IplImage img = cvLoadImage(name);
if(img != null)
{
cvShowImage("hello", img);
cvWaitKey();
cvReleaseImage(img);
}
return img;
}