Сокращение количества столбцов в изображении в opencv?

Я написал код для преобразования изображения в две части в Matlab, как показано ниже.

img1=imge(1:M,1:0.55*N,:);
img2=imge(1:M,0.55*N:N,:);

здесь imge - мое входное изображение, я пытаюсь преобразовать этот код в opencv. Я пытался использовать cv::Resize , но это не сработало. Не могли бы вы мне помочь?


person Ishant Mrinal    schedule 14.07.2013    source источник
comment
обратите внимание, что MATLAB выдаст следующее предупреждение: Warning: Integer operands are required for colon operator when used as index, поэтому, возможно, вам следует использовать fix/round, чтобы убедиться, что индекс 0.55*N является целым числом   -  person Amro    schedule 14.07.2013
comment
Да, я сделал это. спасибо   -  person Ishant Mrinal    schedule 15.07.2013


Ответы (1)


Пытаться:

int b = static_cast<int>(0.55*N);
cv::Mat img1 = img.rowRange(0,M).colRange(0,b);
cv::Mat img2 = img.rowRange(0,M).colRange(b,N);

Примечание что это просто создает заголовок матрицы, базовые данные новой матрицы используются совместно с исходной матрицей .

person Amro    schedule 14.07.2013