Я знаю, что это очень просто, но я просто не могу заставить его работать в Opencv. У меня 2 изображения одного размера, один в RGB и другие в черно-белом. Черно-белое изображение получается после некоторой трансформации в Opencv. Теперь я хочу сопоставить черное белое изображение с изображением RGB и сохранить только пиксель, соответствующий белому пикселю в черно-белом изображении. Черный просто отбрасывается.Картирование 2 изображения в Opencv
В C# его легко, но поскольку я использую C++ opencv, я хочу сделать это в openCV. Как мне это сделать?
В C#, как это:
for(i = 0; i < image.lenght; i+=4)
{
if(img_bw != 255)
image[i] = 0;image[i+1] = 0;image[i+2] = 0;
}
Посмотрите к у оператора доступа к элементам Mat [ссылка] (HTTP: // документы. opencv.org/modules/core/doc/basic_structures.html#mat-at) –
Вы можете использовать библиотеку, которая предлагает логическую функцию «и». Я не знаю, работает ли OpenCV, но я знаю, что IPP делает. Использование «и» сохранит цикл for. RGB && BW == what_you_want. Если вы решите сделать это таким образом, вам придется быть осторожным с форматами изображений. – CTZStef