Что подразумевается под img.at & lt; uchar & gt; (i, j)?

Своего рода основной вопрос. Я не знаю, что это за структура.

img.at<uchar>(i,j)

должно быть? Я пытаюсь найти определение at, но не могу этого понять. а что означает этот синтаксис?

<uchar>

Точно так же, что подразумевается под

img.at<cv::Vec3b>(row,col)[channel]

Да, Mat класс матрицы для манипулирования данными матрицы Я понимаю поведение этих строк, но не могу понять теорию, стоящую за ними?

Что означает этот синтаксис?

img.at<cv::Vec3b>

2

Решение

at перегруженная шаблонная функция C ++ класса cv::Mat,

< > это синтаксис для вызова шаблона C ++.

img.at<uchar>(i,j)

Выше строка означает, что мы получаем доступ к пикселю (i,j) и указав его тип данных, который будет unsigned char,

На простом английском языке выберите 1 пиксель из индекса (i, j) то есть номер строки я и номер столбца J.

img.at<cv::Vec3b>

Вышеуказанное используется для 3-канального изображения. То же, что и первый, но выборка значений пикселей всех трех каналов. Возвращаемое значение Vec3b структура, содержащая 3 значения, по одному на каждый канал.

7

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]