OpenCV中文网站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 安装 配置
查看: 744|回复: 10

运行程序出错,请指导cv::imshow("answer", out);

[复制链接]
发表于 2019-4-11 10:18:13 | 显示全部楼层 |阅读模式
程序运行到下列代码显示错误:
cv::imshow("answer", out);

错误提示:
0x000007FEFCD0BE0D 处(位于 Erzhihua.exe 中)有未经处理的异常:
Microsoft C++ 异常: cv::Exception,位于内存位置
0x000000000016F210 处。
提示栏提示:
ntdll.dll        ntdll.dll        C:\Windows\System32\ntdll.dll        N/A        否        无法查找或打开 PDB 文件。       

回复

使用道具 举报

发表于 2019-4-17 10:03:51 | 显示全部楼层
看一下 会不会是 out 里面没有数据 ,读入的图片又问题  
你可以加一个
if(out.empty())
{
       cout << "out 数据为空"<< endl;
       return -1;
}
来判断下  看是不是为空导致无法显示
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-29 10:28:31 | 显示全部楼层
Memorywen 发表于 2019-4-17 10:03
看一下 会不会是 out 里面没有数据 ,读入的图片又问题  
你可以加一个
if(out.empty())

我加了但是,生成新方案失败,难能帮忙看看什么问题吗?
for (int j = 0; j < height; j++) {
                for (int i = 0; i < width; i++) {
                        uchar val = (int)((float)img.at<cv::Vec3b>(j, i)[0] * 0.0722 + \
                                (float)img.at<cv::Vec3b>(j, i)[1] * 0.7152 + \
                                (float)img.at<cv::Vec3b>(j, i)[2] * 0.2126);
                        if (val < th) {
                                val = 0;
                        }
                        else {
                                val = 255;
                        }
                        out.at<uchar>(j, i) = val;

                        if (out.empty())
                        {
                                cout << "out 数据为空" << endl;
                                return -1;
                        }
                }
        }
        //cv::imwrite("out.jpg", out);
        cv::imshow("answer", out);
        cv::waitKey(0);
        cv::destroyAllWindows();

        return 0;
回复 支持 反对

使用道具 举报

发表于 2019-4-29 14:18:36 | 显示全部楼层
检查下路径是否正确,图片有没有在里面
回复 支持 反对

使用道具 举报

发表于 2019-4-30 16:26:37 | 显示全部楼层
薛Boom 发表于 2019-4-29 10:28
我加了但是,生成新方案失败,难能帮忙看看什么问题吗?
for (int j = 0; j < height; j++) {
                for (int ...

你的代码只要img有数据,out的大小类与img一致 应该是没错的
新方案生成失败有很多原因,
可能是属性配置问题
也可能是你读取的img里无数据,
也可能是链接库的问题 ,
生成的地方应该有提示是什么原因生成失败的
你看一下然后搜下百度 或者贴出来再分析
回复 支持 反对

使用道具 举报

发表于 2019-5-5 11:00:08 | 显示全部楼层
路径正确么
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-5 15:09:20 | 显示全部楼层
Memorywen 发表于 2019-4-30 16:26
你的代码只要img有数据,out的大小类与img一致 应该是没错的
新方案生成失败有很多原因,
可能是属性配 ...

方案生成,显示成功,但是运行出错:提示如下:
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ntdll.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\kernel32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\KernelBase.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“D:\opencv\build\x64\vc15\bin\opencv_world400d.dll”。已加载符号。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\gdi32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\user32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\lpk.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\usp10.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\msvcrt.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ole32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\rpcrt4.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\oleaut32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\comdlg32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\shlwapi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.18837_none_a4d981ff711297b6\comctl32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\advapi32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\sechost.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\shell32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\msvcp140d.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\vcruntime140d.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ucrtbased.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-localization-l1-2-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-processthreads-l1-1-1.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-file-l1-2-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-timezone-l1-1-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-file-l2-1-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-synch-l1-2-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\concrt140d.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\mfplat.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ws2_32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\nsi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\avrt.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\mf.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\atl.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\version.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ksuser.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\mfreadwrite.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\d3d11.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\dxgi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\dwmapi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-downlevel-shlwapi-l1-1-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\imm32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\msctf.dll”。无法查找或打开 PDB 文件。
0x000007FEFCEBBE0D 处(位于 Erzhihua.exe 中)引发的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x000000000028EE20 处。
0x000007FEFCEBBE0D 处(位于 Erzhihua.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x000000000028EE20 处。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-5 15:22:08 | 显示全部楼层
bigchild 发表于 2019-4-29 14:18
检查下路径是否正确,图片有没有在里面

谢谢,修改好了,是图片路径的问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-5 15:27:03 | 显示全部楼层
Memorywen 发表于 2019-4-30 16:26
你的代码只要img有数据,out的大小类与img一致 应该是没错的
新方案生成失败有很多原因,
可能是属性配 ...

能运行出结果效果图,但是下面显示这些代码,是什么原因呢:
“Erzhihua.exe”(Win32): 已加载“D:\opencv\Workspace\Erzhihua\x64\Debug\Erzhihua.exe”。已加载符号。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ntdll.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\kernel32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\KernelBase.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“D:\opencv\build\x64\vc15\bin\opencv_world400d.dll”。已加载符号。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\gdi32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\user32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\lpk.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\usp10.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\msvcrt.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ole32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\rpcrt4.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\oleaut32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\comdlg32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\shlwapi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\winsxs\amd64_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.18837_none_a4d981ff711297b6\comctl32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\advapi32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\sechost.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\shell32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\msvcp140d.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\vcruntime140d.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ucrtbased.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-localization-l1-2-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-processthreads-l1-1-1.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-file-l1-2-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-timezone-l1-1-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-file-l2-1-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-core-synch-l1-2-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\concrt140d.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\mfplat.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ws2_32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\nsi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\avrt.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\mf.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\atl.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\version.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\ksuser.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\mfreadwrite.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\d3d11.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\dxgi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\dwmapi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\api-ms-win-downlevel-shlwapi-l1-1-0.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\imm32.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\msctf.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\uxtheme.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\cryptbase.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\UIAutomationCore.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\psapi.dll”。无法查找或打开 PDB 文件。
“Erzhihua.exe”(Win32): 已加载“C:\Windows\System32\oleacc.dll”。无法查找或打开 PDB 文件。
程序“[9332] Erzhihua.exe”已退出,返回值为 0 (0x0)。
回复 支持 反对

使用道具 举报

发表于 2019-5-6 15:10:28 | 显示全部楼层
薛Boom 发表于 2019-5-5 15:27
能运行出结果效果图,但是下面显示这些代码,是什么原因呢:
“Erzhihua.exe”(Win32): 已加载“D:\openc ...

这个都是无关紧要的 不用管他就行了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|OpenCV中文网站  

GMT+8, 2019-9-17 06:22 , Processed in 0.056173 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表