C++实现 基于VGG19神经网络进行 可见光与红外 图像的融合

20210513

1.基于可见光与红外光的图像融合 说明

 图像融合有很多方法 

1.像素融合:

优点:

 

 

  (1) 所需的计算步骤最少,只需要计算出两者权重 两个图像进行矩阵的相加即可。 

  (2)速度快

  (3) 保留图片信息完整。

缺点:

(1) 保留信息过多。

 (2)两种特征不明显

2.特征融合:

 

 

 

 

 

 

 

 

 

 优点:

(1)在GPU下   320X240的两种图像信息 融合 FPS 286 完全满足实时需求。

(2)保留两种图像主要特征,易于观察。

缺点:

(1) 硬件上需要加装GPU 成本增加。

 (2)目前只能 c++ 上进行开发,其他需要转换。

 

3.opencv 权重、 ps等等   :

(1) 等同于像素级融合,只是两者权重占比 发生变化。

 

 

 

 

 

 

 

2.算法说明

一. 输入图像要求(可根据需求在源码基础上进行修改)

(1) 可见光图像(单通道或者三通道都行)

(2) 红外图像  (目前只能是gray 灰度图)

(3)两者size必须相同。

 

图像融合步骤:

 

(1) Mat 判断是否灰度图 否的话转成Ycrcb  

(2)Mat转tensor   除以255

   (3)  输入 libtorch 转换得到的pt  得出特征 计算权重

 (4) 图像tensor乘以权重  然后相加得出灰度融合特征  如果三通但  替换Y通道到即可。

 

注:

可以看到医学上的融合效果不是很好,目前正在优化代码,完善融合效果。

 

 

 4.优化了网络深度 提取不同层的特征

 

 

 

 

 

 

 

 可以看到融合的效果更好! FPS 45 完全可以满足实时性

 

posted on 2021-05-13 08:37  逆风的泰迪man  阅读(894)  评论(1)    收藏  举报

导航