opencv 一段代码出错了

问题描述

opencv 一段代码出错了
显示.exe停止工作,但是去掉那个for循环就可以运行,是ptr<>的使用不当吗
#include
#include
#include

#include

using namespace std;
using namespace cv;

int main()
{
// 读入一张图片

Mat img = imread(""F:/vsprogram/projecttest/01.jpg"");
// 创建一个名为 ""picture""窗口

namedWindow(""picture"");

//创建一个等大图像Mat  new_img(img.rowsimg.colsCV_8UC3);//row 行heightfor (int  j= 0; j<img.rows; j++){    for (int i = 0; i < img.cols; i++)    {        int y=j;        int x = i;        new_img.ptr<float>(y)[x] = img.ptr<float>(j)[i];    }}// 在窗口中显示原画  imshow(""picture"" new_img);// 等待6000 ms后窗口自动关闭 waitKey(6000);

}

解决方案

先看是不是指针,数组等越界了,指针是否合法等。

解决方案二:
真怀念学opencv的时候

解决方案三:
img 是U8C3 的ptr<>里写uchar就行了

解决方案四:
一段汇编代码的分析

时间: 2024-10-31 11:31:38

opencv 一段代码出错了的相关文章

求问这段代码哪错了急急急急急急

问题描述 求问这段代码哪错了急急急急急急 解决方案 提示的非常明显呀,字符串格式有误,强制转换肯定会出错了 解决方案二: 打个断点,看下db上来的字符串是个啥模样,必然是个不能转为int的东西. 解决方案三: 代码没错,但是看一下MPrice和labMoney.Text的值,这两个值存在不能转换成Int32的字符 解决方案四: MPrice labMoney.Text中某一个无法转换为int 你可以用try catch忽略这个异常. 解决方案五: MPrice labMoney.Text中某一个

这段代码哪里错了,一直在报错

问题描述 这段代码哪里错了,一直在报错 Date t = new Date(); long l = t.getTime(); Timestamp time = new Timestamp(l); Connection con = DBUtils.getConnetion(); String sql = ""select * from book_pl group by bookname having pl_date = ? order by avg(book_score) desc&qu

opencv捕捉视频代码哪儿错了(在书上复制的代码 但报错了)

问题描述 opencv捕捉视频代码哪儿错了(在书上复制的代码 但报错了) -*- coding: utf-8 -*- """ Created on Fri Jan 3 21:06:22 2014 @author: duan """ import numpy as np import cv2 cap = cv2.VideoCapture(0) while(True): ret, frame = cap.read() gray = cv2.cvtCo

c-请问大家这段代码哪里错了,为什么总是Wrong Answer

问题描述 请问大家这段代码哪里错了,为什么总是Wrong Answer #include <algorithm> #include <iostream> using namespace std; struct node { int cost,weight; }; int cmp (node a, node b) { return a.weight<b.weight; } int main() { int n; int kinds,i; double ans,temp,mone

ava基础 代码错误-Java新手,求大神帮小弟看看这段代码哪里错了,多谢!!!

问题描述 Java新手,求大神帮小弟看看这段代码哪里错了,多谢!!! class Student { //姓名 private String name; //年龄 private int age; //构造方法 public Student(){ } public Student(String name, int age){ this.name = name; this.age = age; } public String getName(){ return name; } public voi

c语言-这段代码哪里错了,为啥不能运行

问题描述 这段代码哪里错了,为啥不能运行 #include int main() { int h=3; float r=1.5,pi=3.14; float perimeter,area1,area2,volume; perimeter=2*pi*r; area1=2*pi*r*h; area2=2*pi*r*r+4*pi*r*h; volume=pi*r*r*h; printf("底面圆周长为:%fn",perimeter); printf("圆柱侧面积为:%fn"

请问vb.net中timer这段代码哪里错了

问题描述 请问vb.net中timer这段代码哪里错了 代码如下 If n = sn.Length Then Timer1.Enabled = False End If url = fr & sn(n) n = n + 1 MessageBox.Show(url) 我想当timer运行次数等于sn.Length,自动关闭timer,但是运行时,却不能关闭timer,请问是哪里错了,检查了好几遍都没看出来 我觉得这段代码很简单,先是if判断timer是否关闭,然后执行fr和数组的合并,n= n +

c-请问我这段代码哪里错了?

问题描述 请问我这段代码哪里错了? 题目是输入3个学生的4科成绩,输出每个人的平均成绩和所有成绩中的最高和最低值: #include int max(int c[][4]); int min(int b[][4]); void average(int e[][4]); main() { int a[3][4]; int i=0,j; printf("分别输入3个人的4门成绩:n"); for(i=0;i { printf("第%d个人n",i+1); for(j=0

C#求高手指点这段代码哪错了

问题描述 usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceConsoleApplication1{classMyClass{publicintGetHour(){DateTimedt=DateTime.Now;inthour=dt.Hour;returnhour;}}classProgram{staticvoidMa