unet_d8g_222f.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:kaggle_dsb2017 作者: astoc 项目源码 文件源码
def measure_voxels(labs, ims):

    #print("Befpre measure.regionprops, labs & intensity shapes: ", labs.shape, ims.shape)
    regprop = measure.regionprops(labs, intensity_image=ims)  # probkem here on 20170327
    voxel_volume = np.product(RESIZE_SPACING) 
    areas = [rp.area for rp in regprop] # this is in cubic mm now (i.e. should really be called volume)                       
    volumes = [rp.area * voxel_volume for rp in regprop] 
    diameters = [2 * (3* volume / (4 * np.pi ))**0.3333 for volume in volumes]


    labs_ids =  [rp.label for rp in regprop]
    #ls = [rp.label for rp in regprop]
    max_val = np.max(areas)
    max_index = areas.index(max_val)
    max_label = regprop[max_index].label
    bboxes = [r.bbox for r in regprop]
    #max_ls = ls[max_index]

    idl = labs ==  regprop[max_index].label   #  400
    nodules_pixels = ims[idl]
    nodules_hu = pix_to_hu(nodules_pixels)

    run_UNNEEDED_code = False
    if run_UNNEEDED_code:
        nodules_hu_reg = []
        for rp in regprop:
            idl = labs == rp.label
            nodules_pixels = ims[idl]
            nodules_hu = pix_to_hu(nodules_pixels)
            nodules_hu_reg.append(nodules_hu)           # NOTE some are out of interest, i.e. are equal all (or near all) to  MAX_BOUND (400)

    dfn = pd.DataFrame(
        {
         #"zcenter": zcenters,
         #"ycenter": ycenters, 
         #"xcenter": xcenters, 
         "area":    areas,
         "diameter":   diameters,
         #"irreg_vol":  irreg_vol,
         #"irreg_shape": irreg_shape,
         #"nodules_hu": nodules_hu_reg,
         "bbox":       bboxes
         },
         index=labs_ids)

    return dfn
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号