图像通道融合

通道融合

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);
					
				}
			}

		}
	}

}



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值