深度学习入门;图像的heatMap
来源:互联网 发布:软件测试的简历 编辑:程序博客网 时间:2024/06/09 17:12
深度学习入门;图像的heatMap
图像的heatMap是什么,一副图片的heatmap可以帮助我们在上面检测到想要的object,如下左图所示:
可以直接的看到,人脸的的区域有红色区域,哈哈,这个时候呢用sliding window在图片上进行检测,对于每一个窗口里面的object进行识别,就是检测这个window里面的object是不是红色的区域,是的话就是检测的到的人脸啦。这里我们首先看一下我们程序的结果:右上方的图片最后的那个区域就是哦我们想要的,那个红色的区域就是我们想要的。
具体的做法就是先在classification net上进行pre-train,之后去掉softmax层,改全部的fc层改成卷积层,如何该呢,参考这个链接,代码如下:
def convert_full_conv(model_net,model_params,model_net_fc,model_params_fc): //原有的全连接层 params = ['fc6', 'fc7'] params_fc = ['fc6-conv', 'fc7-conv'] //加载原有的classification net net = caffe.Net(model_net, model_params, caffe.TEST)//提取fc层中的最后的两个fc层作为一个字典{layerName:(c*w*h,b)} fc_params = {pr: (net.params[pr][0].data, net.params[pr][1].data) for pr in params}//加载fc-conv net net_fc = caffe.Net(model_define_fc, model_weight, caffe.TEST)//fc-conv参数 conv_params = {pr: (net_fc.params[pr][0].data, net_fc.params[pr][1].data) for pr in params_fc}//把fc层的后面的三个参数flat,也就是相乘 for pr, pr_conv in zip(params, params_fc): conv_params[pr_conv][0].flat = fc_params[pr][0].flat conv_params[pr_conv][1][...] = fc_params[pr][1] net_fc.save(model_weight_fc) print 'convert done!' return net_fc
之后把原来的那张图片输入网络,就会得到最终的heatmap,之所以有那么多的heatmap是因为对图片进行了不同程度的放缩。
3 0
- 深度学习入门;图像的heatMap
- 深度学习入门笔记--图像线性分类
- 图像识别的深度学习
- Heatmap.js 学习笔记
- heatmap学习笔记
- 深度学习的入门资料
- 深度学习的入门方法
- 深度学习入门论文(图像识别领域)
- 深度学习、图像分类入门,从VGG16卷积神经网络开始
- 深度学习、图像分类入门,从VGG16卷积神经网络开始
- 深度学习-图像识别更多的理解
- 深度学习在图像检索的应用
- TensorFlow的深度学习进行图像修复
- 基于深度学习的图像文字识别
- 基于深度学习的图像语义编辑
- 深度残差学习的图像识别
- 基于深度学习的图像风格转换
- 图像识别的深度残差学习
- 一些开源的空间库
- Scala类与对象(二)
- hdoj-2715-Herd Sums
- HDOJ 2015 偶数求和
- MVC静态化
- 深度学习入门;图像的heatMap
- 数据结构之双链表(不带头节点的插入删除打印)
- Maven搭建Struts2+Hibernate4+Spring4+Shiro(安全篇)之子项目(基于角色,权限的访问控制)
- hdu 3564(线段树+LIS)
- 关于使用android studio时的一些错误整理
- Activity生命周期中onStart和onResume、onPause和onStop有什么不同
- 25.数组指针和函数指针及typedef
- 《javascript高级程序设计》构造函数创建对象章节-147页:在全局作用域中定义的函数只能被某个对象调用
- 【java虚拟机系列】java中类与对象的加载顺序