У меня есть следующий фрагмент кода, который я создал для изменения интенсивности пикселя в изображении OpenCV (класс Cv :: Mat).C++: Как создать динамический тип шаблона
Как вы можете видеть, я выполняю цикл в обоих случаях, но с другим типом шаблона.
Функция передачи может быть перегружена.
Мой вопрос, поэтому, как я могу создать динамический тип шаблона так, что он выглядит лучше ..
Mat mat = _mat.clone() ;
int channels = mat.channels();
switch(channels)
{
case 1:
for (int i=0; i<mat.rows; i++)
{
for (int j=0; j<mat.cols; j++)
{
uchar src = mat.at<uchar>(i,j);
uchar dst = mat.at<uchar>(i,j);
t.transfer(src, dst);
}
}
break;
case 3:
for (int i=0; i<mat.rows; i++)
{
for (int j=0; j<mat.cols; j++)
{
Vec3b src = mat.at<Vec3b>(i,j);
Vec3b dst = mat.at<Vec3b>(i,j);
t.transfer(src, dst);
}
}
break;
}
return mat ;
Это не связано с ответом, но не эквивалентно src и dst? Что делает 'transfer()' do? –