2012-03-28 2 views
1

Я использую библиотеку OpenCV. Он не имеет оператора modulo, который может применяться к матрице WHOLE. Он имеет операции умножения, вычитания для матрицы.Альтернатива оператору Modulo

Есть ли способ объединить эти операции, чтобы иметь альтернативу работе с модулем? Я ищу modulo 2 * pi. Если в строке матрицы несколько кратных 2 * pi, то произведение этой строки будет равно нулю. Это облегчит мне жизнь и сэкономит значительную производительность по сравнению с циклом каждого элемента матрицы.

Спасибо.

+0

Что это значит применить оператор по модулю к целой матрицы, если не применить его к каждому отдельному элементу? –

+0

В библиотеке OpenCV применяются операторы на всей матрице, которые очень оптимизированы, например, умножение, сложение, вычитание и т. Д. Если мы сможем использовать эти операторы напрямую, чтобы вычислить по модулю матрицы (по модулю каждого элемента матрицы) более эффективный, чем переход к каждому элементу и вычисление его по модулю. – user1041086

ответ

1

Если вы также получили дивизию и этаж, вы можете использовать:

mod(a,b) = a - floor(a/b) * b