小编Nic*_*bey的帖子

在脚本中使用ext4分区填充磁盘

我尝试使用parted进行脚本化分区,如下所示:

parted -a optimal /dev/sda mklabel gpt mkpart primary ext4 1 -1
Run Code Online (Sandbox Code Playgroud)

但它抱怨-1不是公认的选择.仍然相同的子命令在分开的提示中起作用.所以我的问题是如何在脚本中使用相同的选项?

linux partitioning

14
推荐指数
1
解决办法
3万
查看次数

在python中异步读取和处理图像

上下文

我经常发现自己处于以下情况:

  • 我有一个我需要处理的图像文件名列表
  • 我使用例如scipy.misc.imread顺序读取每个图像
  • 然后我对每个图像进行某种处理并返回结果
  • 我将结果沿着图像文件名保存到Shelf中

问题在于简单地读取图像需要不可忽略的时间,有时甚至比图像处理更长或更长.

所以我认为理想情况下我可以在处理图像n时读取图像n + 1.或者甚至以自动确定的最佳方式一次更好地处理和读取多个图像?

我已经阅读过有关多处理,线程,扭曲,gevent等的内容,但我无法弄清楚使用哪一个以及如何实现这个想法.有没有人能解决这类问题?

最小的例子

# generate a list of images
scipy.misc.imsave("lena.png", scipy.misc.lena())
files = ['lena.png'] * 100

# a simple image processing task
def process_image(im, threshold=128):
    label, n = scipy.ndimage.label(im > threshold)
    return n

# my current main loop
for f in files:
    im = scipy.misc.imread(f)
    print process_image(im)
Run Code Online (Sandbox Code Playgroud)

python asynchronous numpy image-processing scipy

12
推荐指数
2
解决办法
5124
查看次数

Python OpenCV Box2D

我试图从python中调用OpenCV函数MinAreaRect2.我使用OpenCV 2.4.2与python 2.7和numpy 1.6.我走了这么远:

import cv

def nda2ipl(arr, dtype=None):
    return cv.fromarray(np.ascontiguousarray(arr, dtype=dtype))

def min_area_rect2(points):
    storage = cv.CreateMemStorage()
    cv_points = nda2ipl(points.reshape((-1, 1, 2)))
    out = cv.MinAreaRect2(cv_points, storage)
return out
Run Code Online (Sandbox Code Playgroud)

我可以用形状的ndarray(N x 2)来调用这个函数.我得到了这样的结果:

((476.5, 604.5), (951.0, 1207.0), -0.0)
Run Code Online (Sandbox Code Playgroud)

我假设第一个元组是盒子的中心,第二个元素是宽度和高度,最后一个是角度.

问题是我无法得到明确的参考说明.实际上,opencv文档告诉我函数在Python中返回什么.

我找到了关于这个功能官方文档,但这不是很有用.

python中MinAreaRect2的输出究竟是什么?更一般地说,在哪里可以获得有关OpenCV python包装器的精确文档?

python opencv image-processing

8
推荐指数
1
解决办法
1万
查看次数