caffe binaryproto 与 npy相互转换的实例讲解


Posted in Python onJuly 09, 2018

在caffe中,如果使用的是c++接口,均值文件默认为.binaryproto格式,而如果使用的是python接口,均值文件默认的是numpy的.npy格式,在工作中有时需要将两者进行互相转换,具体方式如下:

binaryproto -> npy

import numpy as np
import caffe
import sys

blob = caffe.proto.caffe_pb2.BlobProto()
data = open( 'mean.binaryproto' , 'rb' ).read()
blob.ParseFromString(data)
arr = np.array( caffe.io.blobproto_to_array(blob) )
out = arr[0]
np.save( 'mean.npy' , out )

npy -> binaryproto

data_mean is 1*H*W

import numpy as np
import caffe
import sys

blob = caffe.proto.caffe_pb2.BlobProto()
with open('mean.npy','rb') as f:
  data_mean = numpy.load(f)
blob.channels=1
blob.height = data_mean.shape[0]
blob.width = data_mean.shape[1]
blob.data.extend(data_mean.astype(float).flat)
binaryproto_file = open('mean.binaryproto', 'wb' ) 
binaryproto_file.write(blob.SerializeToString())
binaryproto_file.close()

以上这篇caffe binaryproto 与 npy相互转换的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程实现微信企业号文本消息推送功能示例
Aug 21 Python
tf.truncated_normal与tf.random_normal的详细用法
Mar 05 Python
Python中的groupby分组功能的实例代码
Jul 11 Python
Python读取系统文件夹内所有文件并统计数量的方法
Oct 23 Python
Python装饰器简单用法实例小结
Dec 03 Python
python3 cvs将数据读取为字典的方法
Dec 22 Python
python使用for循环计算0-100的整数的和方法
Feb 01 Python
Python调用接口合并Excel表代码实例
Mar 31 Python
django rest framework 自定义返回方式
Jul 12 Python
Python接收手机短信的代码整理
Aug 02 Python
python计算auc的方法
Sep 09 Python
Anaconda安装pytorch及配置PyCharm 2021环境
Jun 04 Python
利用Python如何生成便签图片详解
Jul 09 #Python
Caffe均值文件mean.binaryproto转mean.npy的方法
Jul 09 #Python
使用Python更换外网IP的方法
Jul 09 #Python
使用Python AIML搭建聊天机器人的方法示例
Jul 09 #Python
Python迭代器与生成器用法实例分析
Jul 09 #Python
numpy的文件存储.npy .npz 文件详解
Jul 09 #Python
Python实现聊天机器人的示例代码
Jul 09 #Python
You might like
php判断变量类型常用方法
2012/04/24 PHP
php中jpgraph类库的使用介绍
2013/08/08 PHP
ThinkPHP 3.2 数据分页代码分享
2014/10/14 PHP
php输出全球各个时区列表的方法
2015/03/31 PHP
深入解析PHP中foreach语句控制数组循环的用法
2015/11/30 PHP
Yii框架结合sphinx,Ajax实现搜索分页功能示例
2016/10/18 PHP
PHP实现浏览器中直接输出图片的方法示例
2018/03/14 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
php中get_object_vars()在数组的实例用法
2021/02/22 PHP
基于jquery的下拉框改变动态添加和删除表格实现代码
2020/09/12 Javascript
web基于浏览器的本地存储方法应用
2012/11/27 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
JavaScript自定义方法实现trim()、Ltrim()、Rtrim()的功能
2013/11/03 Javascript
jQuery右侧选项卡焦点图片轮播特效代码分享
2015/09/05 Javascript
JavaScript中的定时器之Item23的合理使用
2015/10/30 Javascript
String字符串截取的四种方式总结
2016/11/28 Javascript
JS中如何实现复选框全选功能
2016/12/19 Javascript
微信小程序之获取当前位置经纬度以及地图显示详解
2017/05/09 Javascript
三分钟学会用ES7中的Async/Await进行异步编程
2018/06/14 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
微信小程序实现的日期午别医生排班表功能示例
2019/01/09 Javascript
[34:08]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS EG
2018/03/30 DOTA
[01:10:58]KG vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
决策树的python实现方法
2014/11/18 Python
深入解析Python中的集合类型操作符
2015/08/19 Python
python实现实时监控文件的方法
2016/08/26 Python
pycharm安装和首次使用教程
2018/08/27 Python
python创建文件备份的脚本
2018/09/11 Python
Tensorflow:转置函数 transpose的使用详解
2020/02/11 Python
Python pip安装模块提示错误解决方案
2020/05/22 Python
pytorch SENet实现案例
2020/06/24 Python
英国汽车和货车租赁网站:Hertz英国
2016/09/02 全球购物
iKRIX意大利网上商店:男女豪华服装和配件
2019/10/09 全球购物
2013英文求职信模板范文
2013/11/15 职场文书
反对形式主义、官僚主义、享乐主义和奢靡之风整改措施
2014/09/17 职场文书
Sql Server 行数据的某列值想作为字段列显示的方法
2022/04/20 SQL Server