Если у меня есть данные изображения imgA
и imgB
, то я бы хотел вычислить imgC
следующим образом:
for (int i = 0; i < numPixelsInA; i++) {
imgC[i] = max(0, imgA[i]-imgB[i]);
}
Я не вижу способа сделать это в openCV без записикод, который по сути как выше.Любопытно, если я что-то упускаю.
В качестве пояснения к вышесказанному, imgA и imgB - это OpenCV uchar, и поэтому, чтобы действительно работать над этим, строку следует заменить на:
imgC[i] = (uchar) max(0, ((int) imgA[i]) - ((int) imgB[i]));
Вот почему реализация OpenCV более привлекательна для меня, поскольку они правильно обрабатывают эти проблемы насыщения, и если / когда мы получим IPP, мы сможем получить соответствующие ускорения "бесплатно".