DeepLung prepared

xiaoxiao2021-02-28  47

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):高级形态学处理

转载请注明原文地址: https://www.6miu.com/read-2621297.html

最新回复(0)