Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OpenCV-在C+上转换DCT+;到Android:java.lang.IndexOutOfBoundsException:索引0无效,大小为0 我试图把C++ DCT代码转换成Android。下面是我在Android上尝试从C++转换为OpenCV的代码。但是,我得到了这个错误:_Java_Android_Opencv - Fatal编程技术网

OpenCV-在C+上转换DCT+;到Android:java.lang.IndexOutOfBoundsException:索引0无效,大小为0 我试图把C++ DCT代码转换成Android。下面是我在Android上尝试从C++转换为OpenCV的代码。但是,我得到了这个错误:

OpenCV-在C+上转换DCT+;到Android:java.lang.IndexOutOfBoundsException:索引0无效,大小为0 我试图把C++ DCT代码转换成Android。下面是我在Android上尝试从C++转换为OpenCV的代码。但是,我得到了这个错误:,java,android,opencv,Java,Android,Opencv,Java.lang.IndexOutOfBoundsException:索引0无效,大小为0 我发现“外线”是0。是否可以设置ArrayList大小,或者我是否遗漏了什么?老实说,我不确定这段代码是否有效。请告诉我该怎么做。非常感谢你 Mat secondImage = new Mat(); secondImage = image.clone(); List<Mat> planes = new ArrayList<Mat>(); Core.split(secondIm

Java.lang.IndexOutOfBoundsException:索引0无效,大小为0

我发现“外线”是0。是否可以设置ArrayList大小,或者我是否遗漏了什么?老实说,我不确定这段代码是否有效。请告诉我该怎么做。非常感谢你

Mat secondImage = new Mat();
secondImage = image.clone();

List<Mat> planes = new ArrayList<Mat>();

Core.split(secondImage, planes);
List<Mat> outplanes = new ArrayList<Mat>(planes.size());         
Mat trans = new Mat(CvType.CV_32FC1);           
Log.d("Planes", Integer.toString(planes.size())); //3
Log.d("Outplanes", Integer.toString(outplanes.size()));
for (int k = 0; k < planes.size(); k++) { 
    planes.get(k).convertTo(planes.get(k),CvType.CV_32FC1); 
    Core.dct(planes.get(k), outplanes.get(k)); 
    outplanes.get(k).convertTo(outplanes.get(k),CvType.CV_8UC1);  
} 

Core.merge(outplanes, trans);
Mat secondImage=new Mat();
secondImage=image.clone();
列表平面=新的ArrayList();
Core.split(第二个图像,平面);
List outplanes=newarraylist(planes.size());
Mat trans=新的Mat(CvType.CV_32FC1);
Log.d(“Planes”,Integer.toString(Planes.size())//3.
Log.d(“Outplanes”,Integer.toString(Outplanes.size());
对于(int k=0;k
呼叫:

List<Mat> outplanes = new ArrayList<Mat>(planes.size()); 
初始化Outplane后,错误就会消失

再看看这个:

    outplanes.addAll(planes);