一个开源的库中定义的数据类型,我加进泛型
List<Image<Gray, byte>> HoleImage = new List<Image<Gray, byte>>();
但是使用的时候就是会出错,请教下为什么?HoleImage[i]

解决方案 »

  1.   

    Image<Gray, byte>  abc = HoleImage[i];这样取出来会报错吗?
      

  2.   

    add了
    使用索引器赋值也没问题!
                           Image<Gray, byte> Temp1= External[j];
                           Image<Gray, byte> Temp2 = HoleImage[i];
         if (Sub(Temp1,Temp2)) 这里就会出错了! 我是将这个图片放进一个二维数组 ,之后就会报错 Array should be CvMat or IplImage
      

  3.   

    楼主下回记得把前前后后的代码发来要不别人都不好看。
    你可以试着把你后面的
    cvCreateMat(pImage->width,pImage->height,CV_32FC1); 
    改成
    cvCreateMat( image->height, image->width,CV_32FC1);
      

  4.   

    ----------
    csdn又可以上了,问题不是出在怎么建立矩阵。
    我这样试了试
                           Matrix<byte> Mat1 = new Matrix<byte>(grayImageDest.Size);
                           ExternalImage[j].CopyTo(Mat1);
    上面两句第一句是没问题的,第二句就开始报错了。 NULL array pointer is passed
    这是否说明到这个时候,将图片存进泛型里面,泛型里面仍然是空的呢?
    我接下来做了如下试验 注释掉之前的所有代码
         ImageViewer.Show(ExternalImage[j]);
    希望能显示现在的代码,结果依然是刚刚那句报错 Array should be CvMat or IplImage我真想知道有什么好的数据结构能够存储图片呢?
      

  5.   

    看来有不少人接触过opencv哈,呵呵