В настоящее время я конвертирую некоторый код OpenCV с С++ на Java. Я не могу использовать JavaCV, так как нам нужно преобразование в родной Java, а не в JNA. В какой-то момент кода я получаю следующее назначение:
dst[x] = (uchar)(-(kHit >= kForeground));
Где dst
— uchar*
, kHit
и kForeground
— int
с.
Мне не удалось найти ничего о том, как это работает, и Java не распознает это как операцию. В другом месте кода есть операция над этими двумя переменными, и она сохраняет одно из двух значений :255 или 0.
Рассматриваемый код исходит из opencv/video/src/bgfg_gaussmix.cpp
.