关于cvPyrSegmentation(src, dst, storage, &comp, level, threshold1, threshold2)函数报错的问题解答
先挂上我写的代码:
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <highgui.h>
#include <cv.h>
#include <opencv2/legacy/legacy.hpp> using namespace std;
using namespace cv; void f(IplImage *src, IplImage *dst)
{
CvMemStorage *storage = cvCreateMemStorage();
CvSeq *comp = NULL; cvPyrSegmentation(src, dst, storage, &comp, , , );
int n_comp = comp->total; for (int i = ; i < n_comp; i++)
{
CvConnectedComp *cc = (CvConnectedComp *)cvGetSeqElem(comp, i); }
cvReleaseMemStorage(&storage); } int main(int argc, char *argv[])
{
cvNamedWindow("ch5_1");
IplImage *src = cvLoadImage("F:/BaiduNetdiskDownload/dog1.bmp");
if (!src)
{
printf("Couldn't seem to Open the image\n");
return -;
}
IplImage *dst = cvCreateImage(
cvSize(src->width, src->height),
src->depth,
src->nChannels
);
//printf("%d\n",src->nChannels);//查看当前图像的通道数
f(src, dst);
//show the image in the named window
cvShowImage("ch5_1", dst);
while ()
{
if (cvWaitKey() == )break;
} cvDestroyWindow("ch5_1");
cvReleaseImage(&src);
cvReleaseImage(&dst); return ;
}
问题1:cvPyrSegmentation()函数没找到?
cvPyrSegmentation()这个函数是包含在opencv2/legacy/legacy.hpp文件中,所以需要引入头文件
问题2:程序运行到cvPyrSegmentation()时,程序dang掉了?(这个问题纠结了好一会,愣是没找到原因,最好还是在learning OpenCV书上找到了解决之道)
书上是这样写的:
关于src和dst,需要特别注意一点:由于图像金字塔各层的长和宽都必须是整数,
所以必须要求起始图像的长和宽都能够被2整除,并且能够被2整除的次数不少以金字塔总层数。
例如,对于4层金字塔的高度或宽度为80(2 * 2* 2 * 5)是满足要求的,而为90时(2 * 3* 3 * 5)就是不符合要求的。
所以我将原图设置为了400 * 400 的图像,证实其的正确性。
下面是出图的结果:(由于对图像进行了不正当的操作,原图稍微有点模糊,但不影响最终的效果)


关于cvPyrSegmentation(src, dst, storage, &comp, level, threshold1, threshold2)函数报错的问题解答的更多相关文章
- onerror="javascript:this.src='images/defaultUpload.png';"【容易导致死循环报错】
当无法找到默认图片时,onerror="javascript:this.src='images/defaultUpload.png';"容易导致死循环报错
- Multi-catch parameters are not allowed for source level below 1.7 报错处理
有可能是你项目右键build-path里面的这个东西 在项目上右键properties->project Facets->修改右侧的version 保持一致 还有一个就是Window里面 ...
- PHP文件夹文件拷贝/复制函数 dir_copy($src = '', $dst = '')
/* * 文件夹文件拷贝 * * @param string $src 来源文件夹 * @param string $dst 目的地文件夹 * @return bool */ function dir ...
- canvas.drawBitmap(bitmap, src, dst, paint)
// GameView.drawImage(canvas, mBitDestTop, miDTX, mBitQQ.getHeight(), mBitDestTop.getWidth(), mBitDe ...
- 报错:OpenCV Error: Assertion failed (src.size() == dst.size() && src.type() == dst.ty pe()) in unknown function, file ..……
在用cvDilate函数的时候,老是导致程序中断,报错如下: OpenCV Error: Assertion failed (src.size() == dst.size() && s ...
- python shutil 模块 的剪切文件函数 shutil.movemove(src, dst),换用 os.rename(sourceFile, targetFile)
Google 一搜python 剪切文件,出来shutil 这模块,网上很多人也跟疯说shutil.move(src, dst)就是用来剪切文件的,结果一试,剪切毛线,文件都复制到另一个文件夹了,源文 ...
- Android Studio中使用android:src="@drawable/ic_launcher"报错
今天尝试着安装了Android Studio,界面确实不错,列表什么的也改了很多. 然后新建工程,习惯性在activity_main那里加上一段代码测试看看: <ImageView androi ...
- 开着idea,死机了,关机重启。重启之后,重新打开idea报错java.lang.AssertionError:upexpected content storage modification
开着idea,死机了,关机重启.重启之后,重新打开idea报错java.lang.AssertionError:upexpected content storage modification. goo ...
- R.java 文件内报错:Underscores can only be used with source level 1.7 or greater。
R.java 文件内报错:Underscores can only be used with source level 1.7 or greater 网上查找后得知是Android工程图片资源命名的问 ...
随机推荐
- c++ 读取、保存单张图片
转载:https://www.jb51.net/article/147896.htm 实际上就是以二进制形式打开文件,将数据保存到内存,在以二进制形式输出到指定文件.因此对于有图片的文件,也可以用这种 ...
- webservice之实现天气预报
前通过传智的视频自学了webservice的基本使用,也了解到webservice就是一种跨编程语言和跨操作系统平台的远程调用技术. 对于这些理论知识在这里也不再做过多的解释,本次主要就是记录与分享使 ...
- cookie、 Session Storage 、 Local Storage
问题描述: 使用Ajax, Controller 传回来 JSON 字符串(待处理的信息) 在 Ajax 中实现页面跳转 window.location.href="/jsp/index.j ...
- NXP TJA1040, TJA1042, TJA1050 TJA1051, TJA1057, TJA1044, TJA1055区别
历史关系 PCA82C250和PCA82C251是属于NXP第一代 CAN PHY(CAN物理层收发器): TJA1050, TJA1040和TJA1041是属于NXP第二代CAN PHY: TJA1 ...
- 测试人员如何使用Git
测试人员如何使用Git? 首先Git的安装,这里不多做阐述,直接去Git官方网站下载后并傻瓜式安装即可. 如何判定已安装好Git呢? ------------- 随便打开一个目录,鼠标右键点击可看到 ...
- 解决在高分屏下开发winform界面变形
Form.AutoScaleMode = AutoScaleMode.None; 需要在超大屏下显示的时候,再考虑 AutoScaleMode.Font; AutoScaleMode.Dpi;
- 【快学springboot】8.JPA乐观锁OptimisticLocking
介绍 当涉及到企业应用程序时,正确地管理对数据库的并发访问是至关重要的.为此,我们可以使用Java Persistence API提供的乐观锁定机制.它导致在同一时间对同一数据进行多次更新不会相互干扰 ...
- redis(笔记)
./redis-cli -a root 带密码链接 root 为我的密码del key 删除key keys * 查询 所有keyexist key key是否存在 成功返回1 失败Wie0 set ...
- C#中SqlDataAdapter的使用小结---转载
C#中SqlDataAdapter的使用小结 转载 叁木-Neil 最后发布于2018-06-07 21:29:39 阅读数 8275 收藏 展开 SqlDataAdapter对象 一.特点介绍1.表 ...
- jwt 认证
目录 jwt 认证示意图 jwt 认证算法:签发与检验 drf 项目的 jwt 认证开发流程(重点) drf-jwt 框架基本使用 token 刷新机制(了解) jwt 认证示意图 jwt 优势 1 ...