Python中文
首页
教程
问答
标签
搜索
登录
注册
具有cv2.imread从文件对象或类似内存流的数据中读取图像(这里是未提取的tar)
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个包含数百张图片的<code>.tar</code>文件(<code>.png</code>)。我需要通过opencv来处理它们。</p> <p>我想知道-出于效率的原因-是否有可能在不经过光盘的情况下处理它们。换句话说,我想从与tar文件相关的内存流中读取图片。</p> <p>例如</p> <pre><code> import tarfile import cv2 tar0 = tarfile.open('mytar.tar') im = cv2.imread( tar0.extractfile('fname.png').read() ) </code></pre> <p>最后一行不起作用,因为<code>imread</code>需要文件名而不是流。</p> <p>假设这种直接从<code>tar</code>流读取的方式可以实现,例如对于文本(参见<a href="https://stackoverflow.com/q/8858414/1714661">this SO question</a>)。</p> <hr/> <p>有没有建议用正确的<code>png</code>编码打开流?</p> <p>当然,可以选择不绑定ramdisk,尽管我正在寻找一些更容易计算的东西。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>也许用<a href="http://docs.opencv.org/modules/highgui/doc/reading_and_writing_images_and_video.html?highlight=imdecode#cv2.imdecode" rel="nofollow">imdecode</a>来处理tar文件中的缓冲区?我没有试过,但似乎很有希望。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
plt.savefig不会覆盖现有文件
3 回答
plt.savefig不保存图像
10 回答
plt.savefig在jupyter笔记本中不起作用
1 回答
plt.savefig在从另一个fi调用时停止工作
8 回答
plt.savefig在调用plt.show之前保存空数字
5 回答
plt.save不创建png文件
4 回答
plt.scatter overlay分类数据帧列
9 回答
Plt.Scatter:如何添加title、xlabel和ylab
10 回答
plt.scatter()绘图与Matplotlib中的plt.plot()绘图类似
1 回答
plt.scatter错误'NoneType'对象在成功运行后没有属性'sqrt'
9 回答
plt.set_title()中的标题字符串有误
6 回答
plt.show()
6 回答
plt.show()不在Jupyter笔记本上渲染任何内容
6 回答
plt.show()不打印plt.plot only plt.scatter
5 回答
plt.show()不显示三维散射图像
5 回答
plt.show()不显示任何内容
5 回答
plt.show()不显示数据,而是保留它供下一个图表使用(spyder)
10 回答
plt.show()使终端挂起
4 回答
plt.show()无法使用此代码
7 回答
plt.show()没有打开新的图形风
3 回答