Я пытаюсь загрузить изображения в Mat в openCV для Android для распознавания лиц.openCV для распознавания лица android показывает ошибку «mat not continu»
Изображения в формате JPEG в формате размером 640 х 480.
Я использую Eclipse, и эти коды в .cpp файле.
Это мои коды.
while (getline(file, line)) {
stringstream liness(line);
getline(liness, path, ',');
getline(liness, classlabel);
if(!path.empty() && !classlabel.empty()) {
images.push_back(imread(path, 0));
labels.push_back(atoi(classlabel.c_str()));
}
}
Однако я получаю ошибку о том, что «Матрица не является непрерывной, поэтому его количество строк не может быть изменено в функции резюме :: Mat резюме: Mat: перекроить (Int, Int) сопзИ»
Я попытался с помощью раствора в OpenCV 2.0 C++ API using imshow: returns unhandled exception and "bad-flag"
но это в Visual Studio.
Любая помощь была бы принята с благодарностью.
Конвертация изображения с предварительного просмотра камеры.
Изображение преобразуется в оттенки серого из данных предварительного просмотра камеры.
Mat matRgb = new Mat();
Imgproc.cvtColor(matYuv, matRgb, Imgproc.COLOR_YUV420sp2RGB, 4);
try{
Mat matGray = new Mat();
Imgproc.cvtColor(matRgb, matGray, Imgproc.COLOR_RGB2GRAY, 0);
resultBitmap = Bitmap.createBitmap(640, 480, Bitmap.Config.ARGB_8888);
Utils.matToBitmap(matGray, resultBitmap);
Сохранение изображения.
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmFace[0].compress(Bitmap.CompressFormat.JPEG, 100, stream);
byte[] flippedImageByteArray = stream.toByteArray();
Вы уверены, что ошибка была вызвана вашим кодом, вставленным выше? И этот [ответ] (http://stackoverflow.com/que stions/11606737/open-cv-fisherfaces) разработчиком может оказаться полезным. –