DeepLung prepared

23 篇文章 0 订阅
13 篇文章 0 订阅

prepare.py

Q1(601):
f= open(finished_flag,"w+")

Q2(Ln505):

if isflip:
        Mask = Mask[:,::-1,::-1]

Q3(507):

newshape = np.round(np.array(Mask.shape)*spacing/resolution).astype('int')
    m1 = Mask==3
    m2 = Mask==4
    Mask = m1+m2

Q4:

xx,yy,zz= np.where(Mask)

Q5:

def process_mask(mask):
    convex_mask = np.copy(mask)
    for i_layer in range(convex_mask.shape[0]):
        mask1  = np.ascontiguousarray(mask[i_layer])
        if np.sum(mask1)>0:
            mask2 = convex_hull_image(mask1)
            if np.sum(mask2)>1.5*np.sum(mask1):
                mask2 = mask1
        else:
            mask2 = mask1

Q6:

sliceim[bones] = pad_value

Python多进程库multiprocessing中进程池Pool类的使用

Pool类可以提供指定数量的进程供用户调用,当有新的请求提交到Pool中时,如果池还没有满,就会创建一个新的进程来执行请求。如果池满,请求就会告知先等待,直到池中有进程结束,才会创建新的进程来执行这些请求。

multiprocessing模块提供process类实现新建进程。
如果要同时创建多个子进程可以使用multiprocessing.Pool类。该类可以创建一个进程池,然后在多个核上执行这些进程。

map()
函数原型:
map(func, iterable[, chunksize=None])
Pool类中的map方法,与内置的map函数用法行为基本一致,它会使进程阻塞直到返回结果。
注意,虽然第二个参数是一个迭代器,但在实际使用中,必须在整个队列都就绪后,程序才会运行子进程。

close()
关闭进程池(pool),使其不在接受新的任务。

join()
主进程阻塞等待子进程的退出,join方法必须在close或terminate之后使用。

并发执行的时间明显比顺序执行要快很多,但是进程是要耗资源的,所以平时工作中,进程数也不能开太大。

Python xrange() 函数

xrange() 函数用法与 range 完全相同,所不同的是生成的不是一个数组,而是一个生成器。

偏函数(Partial)

partial函数的作用就是:将所作用的函数作为partial()函数的第一个参数,原函数的各个参数依次作为partial()函数的后续参数,原函数有关键字参数的一定要带上关键字,没有的话,按原有参数顺序进行补充。

Faster-R-CNN(Python).3: numpy.where()函数

numpy.where()函数是三元表达式x if condition else y的矢量化版本。

返回一个数组,或者由数组组成的元组。

根据定义条件返回元素,这些元素或者从x中获得,或者从y中获得。
如果只给出条件,没有给出[,x, y],返回条件中非零(True)元素的坐标。

python numpy.expand_dims的用法

Python numpy函数hstack() vstack() stack() dstack() vsplit() concatenate()

numpy.ascontiguousarray

numpy.ascontiguousarray(a, dtype=None)

在内存中返回一个连续的数组

Parameters:

a : array_like
Input array.
dtype : str or dtype object, optional
Data-type of returned array.

Returns:

out : ndarray
Contiguous array of same shape and content as a, with type dtype if specified.

Examples:

>>>x = np.arange(6).reshape(2,3)
>>>np.ascontiguousarray(x, dtype=np.float32)
array([[ 0.,  1.,  2.],
       [ 3.,  4.,  5.]], dtype=float32)
>>>x.flags['C_CONTIGUOUS']
True
mask1  = np.ascontiguousarray(mask[i_layer])   #如果不是C连续的内存,必须强制转换

skimage.morphology.convex_hull_image(image)

python数字图像处理(18):高级形态学处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值