コード例 #1
0
fns = [
    os.path.splitext(_)[0] for _ in os.listdir(svs_src)
    if _.lower().endswith('svs')
]
dst = r'\\motherserverdw\Kyu_Sync\server for undergrads\JongHa'

if not os.path.exists(dst): os.mkdir(dst)

# fns = ['Wirtz.Denis_OTS-19_5021-022','5619_Wirtz.Denis_OTS-19_5619-026','5619_Wirtz.Denis_OTS-19_5619-028',
#        '5619_Wirtz.Denis_OTS-19_5619-009','5619_Wirtz.Denis_OTS-19_5619','5619_Wirtz.Denis_OTS-19_5619-007']

fns = ['5619_Wirtz.Denis_OTS-19_5619-028']

for fn in fns:
    rois = []
    rois, region_orgs = xml2mask(svs_src, fn, dst)
    for regionidx, (region, region_org) in enumerate(zip(rois, region_orgs)):
        dst2 = os.path.join(dst, fn + '_tile_{:d}'.format(regionidx))
        if os.path.exists(dst2): continue
        # RGB to Haematoxylin-Eosin-DAB (HED) color space conversion.
        # Hematoxylin + Eosin + DAB
        start = time()
        # rgb_from_hed = np.array([[0.650, 0.704, 0.286],
        #                          [0.072, 0.990, 0.105],
        #                          [0.268, 0.570, 0.776]])
        rgb_from_hed = np.array([[0.650, 0.704, 0.286], [0.072, 0.990, 0.105],
                                 [0.0, 0.0, 0.0]])
        rgb_from_hed[2, :] = np.cross(rgb_from_hed[0, :], rgb_from_hed[1, :])
        hed_from_rgb = scipy.linalg.inv(rgb_from_hed)
        Hema = separate_stains(region, hed_from_rgb)[:, :, 0]
        print("color deconvolution: {:.2f} sec elapsed".format(time() - start))
コード例 #2
0
ファイル: practice_v1.py プロジェクト: kukionfr/Skin_Aging
from rgb2hed_v1 import separate_stains
from PIL import Image
import pandas as pd
from copy import deepcopy

svs_src = r'\\10.162.80.6\Kyu_Sync\Aging\data\svs'
# fns = [os.path.splitext(_)[0] for _ in os.listdir(svs_src) if _.lower().endswith('svs')]
fns = ['5619_Wirtz.Denis_OTS-19_5619-038']
#'5619_Wirtz.Denis_OTS-19_5619-037','5619_Wirtz.Denis_OTS-19_5619-024','5619_Wirtz.Denis_OTS-19_5619-004','5619_Wirtz.Denis_OTS-19_5619-001', '5619_Wirtz.Denis_OTS-19_5619-002', '5619_Wirtz.Denis_OTS-19_5619-018','5619_Wirtz.Denis_OTS-19_5619-017','5619_Wirtz.Denis_OTS-19_5619-022'
dst = os.path.join(svs_src, 'fibroblast_detection_v1')
if not os.path.exists(dst): os.mkdir(dst)

# fns = ['Wirtz.Denis_OTS-19_5021-006']
for fn in fns:
    rois = []
    rois = xml2mask(svs_src, fn, dst)
    for regionidx, region in enumerate(rois):
        # RGB to Haematoxylin-Eosin-DAB (HED) color space conversion.
        # Hematoxylin + Eosin + DAB
        start = time()
        # rgb_from_hed = np.array([[0.650, 0.704, 0.286],
        #                          [0.072, 0.990, 0.105],
        #                          [0.268, 0.570, 0.776]])
        rgb_from_hed = np.array([[0.650, 0.704, 0.286], [0.072, 0.990, 0.105],
                                 [0.0, 0.0, 0.0]])
        rgb_from_hed[2, :] = np.cross(rgb_from_hed[0, :], rgb_from_hed[1, :])
        hed_from_rgb = scipy.linalg.inv(rgb_from_hed)
        Hema = separate_stains(region, hed_from_rgb)[:, :, 0]
        print("color deconvolution: {:.2f} sec elapsed".format(time() - start))
        # normalize image between 0 to 255
        Hematoxylin = cv2.normalize(Hema,