概述
通道融合
merge(vector<cv::Mat>& imgList)
{
int inputChannels = imgList.at(0).channels();
int outChaneels = inputChannels * imgList.size();
Mat newImg2 = cv::Mat(imgList.at(0).rows, imgList.at(0).cols, CV_MAKETYPE(imgList.at(0).depth(), imgList.size()*imgList.at(0).channels()), cv::Scalar(0));
uchar* out_ptr = newImg2.data;
#pragma omp parallel for num_threads(5)
int i, j, k, c;
for ( i=0 ; i < imgList[0].rows; i++)
{
for ( j=0 ; j < imgList[0].cols; j++)
{
for ( k=0 ; k < outChaneels / imgList[0].channels();k++)
{
cv::Mat im = imgList[k];
uchar* in_ptr = im.data;
for ( c=0; c < imgList[0].channels(); c++)
{
*(out_ptr+i*im.cols*outChaneels+j*outChaneels+c*outChaneels / imgList[0].channels()+k) = *(in_ptr + i * im.cols*im.channels()+j*im.channels() + c);
}
}
}
}
}
最后
以上就是有魅力航空为你收集整理的图像通道融合通道融合的全部内容,希望文章能够帮你解决图像通道融合通道融合所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复