Cascaded-fcn: рдореЙрдбрд▓ рдкрд░реАрдХреНрд╖рдг рд╕рдорд╕реНрдпрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 10 рдЕрдкреНрд░реИрд▓ 2017  ┬╖  19рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: IBBM/Cascaded-FCN

рдирдорд╕реНрддреЗ, рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдореЙрдбрд▓ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рдореЗрд░рд╛ рдХреЛрдб рдЖрдкрдХреА рдиреЛрдЯрдмреБрдХ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред рдореЗрд░рд╛ рдХреЛрдб рд╣реИ

`caffe.set_mode_gpu ()
caffe.set_device(2)
net_liver = caffe.Net('/home/zhou/zou/Cascaded-FCN/models/cascadedfcn/step1/step1_deploy.prototxt', '/home/zhou/zou/Cascaded-FCN/models/cas cadedfcn/step1/step1_weights. caffemodel', caffe.TEST)

img=read_dicom_series("../train_image/3Dircadb1.17/PATIENT_DICOM/")
lbl=read_liver_lesion_masks("../train_image/3Dircadb1.17/MASKS_DICOM/")
рдПрд╕ = 90
img_p = step1_preprocess_img_slice(img[...,S])
рдПрд▓рдмреАрдПрд▓_рдкреА = рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕_рдПрд▓рдмреАрдПрд▓_рд╕реНрд▓рд╛рдЗрд╕ (рдПрд▓рдмреАрдПрд▓ [..., рдПрд╕])
net_liver.blobs['data'].data[0,0,...] = img_p
рдкреВрд░реНрд╡ = net_liver.forward()['prob'][0,1] > 0.5
plt.figure (рдЕрдВрдЬреАрд░ = (3*5,10))
plt.subplot(1, 3, _1)
plt.рд╢реАрд░реНрд╖рдХ ('рд╕реАрдЯреА')
plt.imshow(img_p[92:-92,92:-92], 'рдЧреНрд░реЗ')
plt.subplot(1, 3, 2)
plt.рд╢реАрд░реНрд╖рдХ ('рдЬреАрдЯреА')
plt.imshow(lbl_p, 'рдЧреНрд░реЗ')
plt.subplot(1, 3, 3)
plt.рд╢реАрд░реНрд╖рдХ ('рдкреВрд░реНрд╡')
plt.imshow(pred, 'рдЧреНрд░реЗ')`

рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдо рдЗрд╕ рддрд░рд╣ рдмрд╣реБрдд рдЦрд░рд╛рдм рд╣реИ
result

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдореЙрдбрд▓ рдЧрд▓рдд рд╣реИ, рдЬрдм рдореИрдВ рдЕрдкрдиреЗ рдореЙрдбрд▓ рдХреЛ рд╕реНрд╡рдпрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдо рдЕрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рд╣реИ
3dircadb1 1 68

@RenieWell @mohamed-ezz

рд╕рднреА 19 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХреНрдпрд╛ рдХреЛрдИ рддрд░рдХреАрдм рд╣реИ рдЬрд┐рд╕рдХреА рдореИрдВрдиреЗ рдЙрдкреЗрдХреНрд╖рд╛ рдХреА рд╣реИ?

рдкрд░рд┐рдгрд╛рдо рдЕрдЬреАрдм рд▓рдЧ рд░рд╣рд╛ рд╣реИред рд╕рдВрд╢реЛрдзрди рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдиреЛрдЯрдмреБрдХ рдХреЛ рдпрдерд╛рд╡рдд рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рд╣реА рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдХреЛрдб рд╡рд╣реА рд╣реИ рдЬреЛ рдЖрдк рдиреЛрдЯрдмреБрдХ рдореЗрдВ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ, рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреЛрдб рдХрд╣рд╛рдВ рдЧрд▓рдд рд╣реИ, рдХреНрдпрд╛ рдЖрдк рдореБрдЭреЗ рдХреБрдЫ рдорд╛рд░реНрдЧрджрд░реНрд╢рди рджреЗ рд╕рдХрддреЗ рд╣реИрдВ? рдзрдиреНрдпрд╡рд╛рдж

рдореИрдВ рдЖрдкрдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдорд┐рд▓рд╛, рдХреНрдпрд╛ рдЖрдкрдХреЛ рдкрддрд╛ рдЪрд▓рд╛? рдЕрдЧрд░ рдЖрдк рдЕрдкрдирд╛ рд░рд╛рд╕реНрддрд╛ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВред @manutdzou

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдореЙрдбрд▓ рдЧрд▓рдд рд╣реИ, рдЬрдм рдореИрдВ рдЕрдкрдиреЗ рдореЙрдбрд▓ рдХреЛ рд╕реНрд╡рдпрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдо рдЕрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рд╣реИ
3dircadb1 1 68

@RenieWell @mohamed-ezz

рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдЦрдмрд░ рд╣реИ @manutdzou ред рдкреБрд▓ рдЕрдиреБрд░реЛрдз рд▓рд┐рдЦрдиреЗ рдФрд░ рдЬрдирддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдореЙрдбрд▓ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред рдмрд╕ рдЕрдкрдиреЗ рдореЙрдбрд▓ рдХреЛ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдлрд╝рд╛рдЗрд▓рд╣реЛрд╕реНрдЯрд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рд▓рд┐рдВрдХ рдФрд░ рдЕрдкрдиреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рд░реАрдбрдореА рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВред

рд╡рд╛рд╣ рдореБрдЭреЗ рдЖрдкрдХреЗ рдкрд╣рд▓реЗ рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рдорд╛рди рд╣реА рдЕрдЬреАрдм рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рд╛ рд╣реИред рддрдм рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдореЙрдбрд▓ рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред рд╡реИрд╕реЗ рднреА рдореИрдВ TensorFlow рдкрд░ рдпреВ-рдиреЗрдЯ рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░рддрд╛ рд╣реВрдВ, рдореЗрд░реА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ рд▓реЗрдХрд┐рди рдЕрдЬреАрдм рдирд╣реАрдВ рд╣реИред

@manutdzou ред рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ, рдХреНрдпрд╛ рдЖрдк рдЕрдкрдирд╛ рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдЖрдкрдХрд╛ рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред

рдЬрд╝рд░рд╛ рд╕реБрдирд┐рдП рд╕рднреА,
рдореИрдВрдиреЗ рдЕрднреА рд░реАрдбрдореА рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдПрдХ рдбреЙрдХрдЯрд░ рдЪрд┐рддреНрд░ рдЬреЛрдбрд╝рд╛ рд╣реИ, рдЬреЛ рд╣рдорд╛рд░реЗ рдХреЛрдб рдХреЛ рд╕реБрдЪрд╛рд░реВ рд░реВрдк рд╕реЗ рдЪрд▓рд╛рддрд╛ рд╣реИред
рдбреЙрдХрд░ рдЫрд╡рд┐ рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рд░реАрдбрдореА рдореЗрдВ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
рдЕрдкреЗрдХреНрд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо рдЗрд╕ рдкреНрд░рд┐рдВрдЯ рдЖрдЙрдЯ рдХреА рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╢реБрднрдХрд╛рдордирд╛рдПрдВ,
рдкреИрдЯреНрд░рд┐рдХ
cascaded_unet_inference.pdf.pdf

@PatrickChrist рд╣рд╛рдп рдкреИрдЯреНрд░рд┐рдХ, рдорд╣рд╛рди рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рдкреВрд░реНрд╡-рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ nvidia-docker рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдХрдард┐рди рд╣реИ рдФрд░ рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ nvidia-docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рд╕рд╣реА pretrained рдореЙрдбрд▓ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

@zakizhou рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдореБрджреНрджрд╛ рд╣реИ, рдЗрд╕реЗ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЙрдХрд░ рд╣рдорд╛рд░реА рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рд╢рд░реНрдд рд╣реИред

nvidia-docker рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗрд╡рд▓ рддрднреА рд╣реИ рдЬрдм рдЖрдк GPU рдкрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдк рдХреЗрд╡рд▓ docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк CPU рдкрд░ рдЪрд▓рдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реИрдВред

рдпрджрд┐ рдЖрдк linux distro рдкрд░ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ, рддреЛ nvidia-docker рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЖрдкрдХреЛ рдХрд┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИ?

рдореЙрдбрд▓ https://github.com/IBBM/Cascaded-FCN/tree/master/models/cascadedfcn рдореЗрдВ рднреА рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рд╣реЛрд╕реНрдЯ рд╡рд╛рддрд╛рд╡рд░рдг (рдбреЙрдХрд░ рдХреЗ рдмрд┐рдирд╛) рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

@ рдореЛрд╣рдореНрдордж-рдПрдЬрд╝ рдЖрдкрдХреЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдмрд┐рдирд╛ gpus рдХреЗ ubuntu рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВрдиреЗ nvidia-docker рдХреЗ рдмрдЬрд╛рдп docker nvidia-docker рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рджреБрдЦ рдХреА рдмрд╛рдд рд╣реИ рдХрд┐ рдЬрдм рдореИрдВрдиреЗ pretrained caffe рдореЙрдбрд▓, jupyter рдХрд╛ рдореВрд▓ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдиреЛрдЯрдмреБрдХ рдбрдВрдк рд╣реЛ рдЧрдИ рдФрд░ рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХреНрдпреЛрдВред рдЬреИрд╕рд╛ рдХрд┐ @manutdzou рдиреЗ рдЗрд╕ рдЕрдВрдХ рдореЗрдВ рдХрд╣рд╛ рд╣реИ, рдпрд╣рд╛рдВ рдХрд╛ рдкреВрд░реНрд╡-рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдореЙрдбрд▓ https://github.com/IBBM/Cascaded-FCN/tree/master/models/cascadedfcn рдирдореВрдирд╛ рдЫрд╡рд┐ рдкрд░ рдЦрд░рд╛рдм рдкреНрд░рджрд░реНрд╢рди рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдХреЛрдВрдбрд╛ рдХреЗ рд╕рд╛рде рдХреИрдлреЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдХреНрдпрд╛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрдл рдХрд╛ рдЧрд▓рдд рд╕рдВрд╕реНрдХрд░рдг рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ?

рд╣рд╛рдБ рдпрд╣ рдХреИрдл рд╕рдВрд╕реНрдХрд░рдг рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдХреГрдкрдпрд╛ рдбреЙрдХрд░ рдЫрд╡рд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

4 рдЬреБрд▓рд╛рдИ 2017 рдХреЛ рд╢рд╛рдо 5:45 рдмрдЬреЗ, "рдЬреА рдЭреЛрдЙ" рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

@ mohamed-ezz https://github.com/mohamed-ezz рдЖрдкрдХреЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рд╣реВрдВ
рдмрд┐рдирд╛ gpus рдХреЗ ubuntu рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп docker рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ
рдПрдирд╡реАрдбрд┐рдпрд╛-рдбреЙрдХрд░ рд▓реЗрдХрд┐рди рджреБрдЦ рдХреА рдмрд╛рдд рд╣реИ рдХрд┐ рдЬрдм рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХреИрдл рдореЙрдбрд▓ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА,
jupyter рдиреЛрдЯрдмреБрдХ рдХрд╛ рдореВрд▓ рдбрдВрдк рд╣реЛ рдЧрдпрд╛ рдФрд░ рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХреНрдпреЛрдВред рдХреИрд╕рд╛
@manutdzou https://github.com/manutdzou рдиреЗ рдЗрд╕ рдЕрдВрдХ рдореЗрдВ рдХрд╣рд╛,
рдпрд╣рд╛рдВ рдкреВрд░реНрд╡ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдореЙрдбрд▓ https://github.com/IBBM/Cascaded-FCN/tree/master/
model/cascadedfcn рдирдореВрдирд╛ рдЫрд╡рд┐ рдкрд░ рдЦрд░рд╛рдм рдкреНрд░рджрд░реНрд╢рди рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдХреИрдлрд╝реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛
рдХреЛрдВрдбрд╛ рдХреЗ рд╕рд╛рде, рдХреНрдпрд╛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрдл рдХрд╛ рдЧрд▓рдд рд╕рдВрд╕реНрдХрд░рдг рд╣реИ рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рдпрд╣ рд╣реБрдЖ?
рд╕рдВрдХрдЯ?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/IBBM/Cascaded-FCN/issues/13#issuecomment-312908109 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ADqENQMhAJvhyvV1SZ5ApQelMqNhBlTMks5sKl39gaJpZM4M4ckQ
.

@ рдореЛрд╣рдореНрдордж-рдПрдЬрд╝ рдареАрдХ рд╣реИ, рдореИрдВ рдЬреАрдкреАрдпреВ рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рдкрд░ рдореЙрдбрд▓ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ, рдзрдиреНрдпрд╡рд╛рдж!

GPU рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╕ README.md рдореЗрдВ рдЫрд╡рд┐ рдХреЗ рд╕рд╛рде docker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп
рдПрдирд╡реАрдбрд┐рдпрд╛-рдбреЙрдХрд░ рдХреАред

4 рдЬреБрд▓рд╛рдИ, 2017 рдХреЛ рд╢рд╛рдо 6:59 рдмрдЬреЗ, "рдЬреА рдЭреЛрдЙ" рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

@ mohamed-ezz https://github.com/mohamed-ezz рдареАрдХ рд╣реИ, рдореИрдВ рдПрдХ рдкрд░ рдореЙрдбрд▓ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛
GPU рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░, рдлрд┐рд░ рд╕реЗ рдзрдиреНрдпрд╡рд╛рдж!

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/IBBM/Cascaded-FCN/issues/13#issuecomment-312919887 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ADqENQh6pIiGyQYTbKSOx_2reMDlja3Cks5sKm-GgaJpZM4M4ckQ
.

рдореИрдВрдиреЗ рдмрд╛рдпрдбреВ рдореЗрдВ рд░рд╛рдЗрдЯ рд▓реАрд╡рд░ рдФрд░ рд▓реЗрд╕рд┐рдпрди рдореЙрдбрд▓ рдХрд╛ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕ рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рддрд░рд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

`рдЖрдпрд╛рдд рдкреНрд░рдгрд╛рд▓реА, рдУрдПрд╕
sys.path.insert(0, '/home/zhou/zou/caffe_ws/python')
sys.path.insert(0,'/home/zhou/zou/Cascaded-FCN/lib')
np . рдХреЗ рд░реВрдк рдореЗрдВ numpy рдЖрдпрд╛рдд рдХрд░реЗрдВ
matplotlib рд╕реЗ plt . рдХреЗ рд░реВрдк рдореЗрдВ pyplot рдЖрдпрд╛рдд рдХрд░реЗрдВ
рдХреИрдлреЗ рдЖрдпрд╛рдд рдХрд░реЗрдВ

result_path = "/ рд╣реЛрдо/рдЭреЛрдЙ/рдЬрд╝реВ/рдХреИрд╕реНрдХреЗрдб-рдПрдлрд╕реАрдПрди/рдХреЛрдб/рдкрд░рд┐рдгрд╛рдо/"
рдпрджрд┐ рдирд╣реАрдВ os.path.exists(result_path):
os.makedirs(result_path)

im_list = open('test_lesion_list.txt', 'r').read().splitlines()

caffe.set_mode_gpu ()
caffe.set_device(0)
net_liver = caffe.Net('deploy.prototxt', 'liver.caffemodel', caffe.TEST)
net_lesion = caffe.Net('deploy.prototxt', 'lesion.caffemodel', caffe.TEST)

рдЬрд┐рдЧрд░ = 1
рдШрд╛рд╡ = 2
рдореЗрд░реЗ рд▓рд┐рдП рд░реЗрдВрдЬ рдореЗрдВ (0, рд▓реЗрди (im_list)):
im = np.load(im_list[i].split(' ')[0])
рдореБрдЦреМрдЯрд╛ = рдПрдирдкреА.рд▓реЛрдб (im_list [i]ред рд╡рд┐рднрд╛рдЬрди (' ') [1])
in_ = np.array(im, dtype=np.float32)
in_expand = in_ [np.newaxis, ...]
рдмреВрдБрдж = in_expand [np.newaxis, :, :, :]

net_liver.blobs['data'].reshape(*blob.shape)
net_liver.blobs['data'].data[...] = blob
net_liver.forward()
output_liver = net_liver.blobs['prob'].data[0].argmax(axis=0)

net_lesion.blobs['data'].reshape(*blob.shape)
net_lesion.blobs['data'].data[...] = blob
net_lesion.forward()
output_lesion = net_lesion.blobs['prob'].data[0].argmax(axis=0)

output = output_liver
ind_1 = np.where(output_liver ==0)
output_lesion[ind_1] = 255
ind_2 = np.where(output_lesion ==0)
output[ind_2] = 2

plt.figure(figsize=(3*5,10))
plt.subplot(1, 3, 1)
plt.title('CT')
plt.imshow(im[92:-92,92:-92], 'gray')
plt.subplot(1, 3, 2)
plt.title('GT')
plt.imshow(mask, 'gray')
plt.subplot(1, 3, 3)
plt.title('pred')
plt.imshow(output, 'gray')
path = result_path + im_list[i].split(' ')[0].split('/')[-1][0:-3] +'jpg'
plt.savefig(path)
plt.close()

`
рдХреБрдЫ рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ

3dircadb1 17 85
3dircadb1 17 80
@ рдореЛрд╣рдореНрдордж-рдПрдЬрд╝ @RenieWell @mjiansun @PatrickChrist @PiaoLiangHXD

рдкрд░рдд {
рдирд╛рдо: "рдбреЗрдЯрд╛"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЗрдирдкреБрдЯ"
рд╢реАрд░реНрд╖: "рдбреЗрдЯрд╛"
input_param {рдЖрдХрд╛рд░: {рдордВрдж: 1 рдордВрдж: 1 рдордВрдж: 572 рдордВрдж: 572}}
}

рдкрд░рдд {
рдирд╛рдо: "conv_d0a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреЗрдЯрд╛"
рд╢реАрд░реНрд╖: "рдбреА0рдмреА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 64
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d0b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА0рдмреА"
рд╢реАрд░реНрд╖: "рдбреА0рдмреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_d0b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА0рдмреА"
рд╢реАрд░реНрд╖: "рдбреА0рд╕реА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 64
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d0c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА0рд╕реА"
рд╢реАрд░реНрд╖: "рдбреА0рд╕реА"
}
рдкрд░рдд {
рдирд╛рдо: "pool_d0c-1a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдкреВрд▓рд┐рдВрдЧ"
рдиреАрдЪреЗ: "рдбреА0рд╕реА"
рд╢реАрд░реНрд╖: "рдбреА1рдП"
рдкреВрд▓рд┐рдВрдЧ_рдкрд░рдо {
рдкреВрд▓: MAX
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
}
}
рдкрд░рдд {
рдирд╛рдо: "conv_d1a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА1рдП"
рд╢реАрд░реНрд╖: "рдбреА1рдмреА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 128
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d1b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА1рдмреА"
рд╢реАрд░реНрд╖: "рдбреА1рдмреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_d1b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА1рдмреА"
рд╢реАрд░реНрд╖: "d1c"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 128
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d1c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "d1c"
рд╢реАрд░реНрд╖: "d1c"
}
рдкрд░рдд {
рдирд╛рдо: "pool_d1c-2a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдкреВрд▓рд┐рдВрдЧ"
рдиреАрдЪреЗ: "d1c"
рд╢реАрд░реНрд╖: "рдбреА 2 рдП"
рдкреВрд▓рд┐рдВрдЧ_рдкрд░рдо {
рдкреВрд▓: MAX
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
}
}
рдкрд░рдд {
рдирд╛рдо: "conv_d2a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "d2a"
рд╢реАрд░реНрд╖: "рдбреА 2 рдмреА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 256
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d2b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА2рдмреА"
рд╢реАрд░реНрд╖: "рдбреА 2 рдмреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_d2b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА2рдмреА"
рд╢реАрд░реНрд╖: "рдбреА2рд╕реА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 256
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d2c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА2рд╕реА"
рд╢реАрд░реНрд╖: "рдбреА2рд╕реА"
}
рдкрд░рдд {
рдирд╛рдо: "pool_d2c-3a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдкреВрд▓рд┐рдВрдЧ"
рдиреАрдЪреЗ: "рдбреА2рд╕реА"
рд╢реАрд░реНрд╖: "рдбреА3рдП"
рдкреВрд▓рд┐рдВрдЧ_рдкрд░рдо {
рдкреВрд▓: MAX
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
}
}
рдкрд░рдд {
рдирд╛рдо: "conv_d3a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА3рдП"
рд╢реАрд░реНрд╖: "рдбреА3рдмреА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 512
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d3b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА3рдмреА"
рд╢реАрд░реНрд╖: "рдбреА3рдмреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_d3b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА3рдмреА"
рд╢реАрд░реНрд╖: "рдбреА3рд╕реА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 512
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d3c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА3рд╕реА"
рд╢реАрд░реНрд╖: "рдбреА3рд╕реА"
}

рдкрд░рдд {
рдирд╛рдо: "pool_d3c-4a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдкреВрд▓рд┐рдВрдЧ"
рдиреАрдЪреЗ: "рдбреА3рд╕реА"
рд╢реАрд░реНрд╖: "рдбреА 4 рдП"
рдкреВрд▓рд┐рдВрдЧ_рдкрд░рдо {
рдкреВрд▓: MAX
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
}
}
рдкрд░рдд {
рдирд╛рдо: "conv_d4a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА4рдП"
рд╢реАрд░реНрд╖: "рдбреА 4 рдмреА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 1024
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d4b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА 4 рдмреА"
рд╢реАрд░реНрд╖: "рдбреА 4 рдмреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_d4b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдбреА 4 рдмреА"
рд╢реАрд░реНрд╖: "рдбреА4рд╕реА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 1024
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_d4c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдбреА4рд╕реА"
рд╢реАрд░реНрд╖: "рдбреА4рд╕реА"
}

рдкрд░рдд {
рдирд╛рдо: "upconv_d4c_u3a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдбреАрдХреЛрдирд╡реЛрд▓реНрдпреВрд╢рди"
рдиреАрдЪреЗ: "рдбреА4рд╕реА"
рд╢реАрд░реНрд╖: "u3a"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 512
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
}
}

рдкрд░рдд {
рдирд╛рдо: "relu_u3a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u3a"
рд╢реАрд░реНрд╖: "u3a"
}
рдкрд░рдд {
рдирд╛рдо: "crop_d3c-d3cc"
рдкреНрд░рдХрд╛рд░: "рдлрд╕рд▓"
рдиреАрдЪреЗ: "рдбреА3рд╕реА"
рдиреАрдЪреЗ: "u3a"
рд╢реАрд░реНрд╖: "рдбреА3рд╕реАрд╕реА"

}
рдкрд░рдд {
рдирд╛рдо: "concat_d3cc_u3a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХреЙрдирдХреИрдЯ"
рдиреАрдЪреЗ: "u3a"
рдиреАрдЪреЗ: "рдбреА3рд╕реАрд╕реА"
рд╢реАрд░реНрд╖: "u3b"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u3b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "u3b"
рд╢реАрд░реНрд╖: "u3c"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 512
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u3c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u3c"
рд╢реАрд░реНрд╖: "u3c"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u3c-d"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "u3c"
рд╢реАрд░реНрд╖: "u3d"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 512
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u3d"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u3d"
рд╢реАрд░реНрд╖: "u3d"
}
рдкрд░рдд {
рдирд╛рдо: "upconv_u3d_u2a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдбреАрдХреЛрдирд╡реЛрд▓реНрдпреВрд╢рди"
рдиреАрдЪреЗ: "u3d"
рд╢реАрд░реНрд╖: "u2a"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 256
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u2a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u2a"
рд╢реАрд░реНрд╖: "u2a"
}
рдкрд░рдд {
рдирд╛рдо: "crop_d2c-d2cc"
рдкреНрд░рдХрд╛рд░: "рдлрд╕рд▓"
рдиреАрдЪреЗ: "рдбреА2рд╕реА"
рдиреАрдЪреЗ: "u2a"
рд╢реАрд░реНрд╖: "рдбреА2рд╕реАрд╕реА"

}
рдкрд░рдд {
рдирд╛рдо: "concat_d2cc_u2a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХреЙрдирдХреИрдЯ"
рдиреАрдЪреЗ: "u2a"
рдиреАрдЪреЗ: "d2cc"
рд╢реАрд░реНрд╖: "u2b"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u2b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "u2b"
рд╢реАрд░реНрд╖: "u2c"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 256
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u2c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u2c"
рд╢реАрд░реНрд╖: "u2c"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u2c-d"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "u2c"
рд╢реАрд░реНрд╖: "u2d"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 256
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u2d"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u2d"
рд╢реАрд░реНрд╖: "u2d"
}
рдкрд░рдд {
рдирд╛рдо: "upconv_u2d_u1a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдбреАрдХреЛрдирд╡реЛрд▓реНрдпреВрд╢рди"
рдиреАрдЪреЗ: "u2d"
рд╢реАрд░реНрд╖: "рдпреВ 1 рдП"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 128
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u1a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдпреВ1рдП"
рд╢реАрд░реНрд╖: "рдпреВ 1 рдП"
}
рдкрд░рдд {
рдирд╛рдо: "crop_d1c-d1cc"
рдкреНрд░рдХрд╛рд░: "рдлрд╕рд▓"
рдиреАрдЪреЗ: "d1c"
рдиреАрдЪреЗ: "рдпреВ1рдП"
рд╢реАрд░реНрд╖: "d1cc"

}
рдкрд░рдд {
рдирд╛рдо: "concat_d1cc_u1a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХреЙрдирдХреИрдЯ"
рдиреАрдЪреЗ: "рдпреВ1рдП"
рдиреАрдЪреЗ: "d1cc"
рд╢реАрд░реНрд╖: "рдпреВ 1 рдмреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u1b-c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдпреВ1рдмреА"
рд╢реАрд░реНрд╖: "рдпреВ1рд╕реА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 128
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u1c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "рдпреВ1рд╕реА"
рд╢реАрд░реНрд╖: "рдпреВ1рд╕реА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u1c-d"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдпреВ1рд╕реА"
рд╢реАрд░реНрд╖: "u1d"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 128
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u1d"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u1d"
рд╢реАрд░реНрд╖: "u1d"
}
рдкрд░рдд {
рдирд╛рдо: "upconv_u1d_u0a_NEW"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдбреАрдХреЛрдирд╡реЛрд▓реНрдпреВрд╢рди"
рдиреАрдЪреЗ: "u1d"
рд╢реАрд░реНрд╖: "u0a"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 64
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 2
рдХрджрдо: 2
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u0a"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u0a"
рд╢реАрд░реНрд╖: "u0a"
}
рдкрд░рдд {
рдирд╛рдо: "crop_d0c-d0cc"
рдкреНрд░рдХрд╛рд░: "рдлрд╕рд▓"
рдиреАрдЪреЗ: "рдбреА0рд╕реА"
рдиреАрдЪреЗ: "u0a"
рд╢реАрд░реНрд╖: "d0cc"

}
рдкрд░рдд {
рдирд╛рдо: "concat_d0cc_u0a-b"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХреЙрдирдХреИрдЯ"
рдиреАрдЪреЗ: "u0a"
рдиреАрдЪреЗ: "d0cc"
рд╢реАрд░реНрд╖: "рдпреВ0рдмреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u0b-c_New"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "рдпреВ0рдмреА"
рд╢реАрд░реНрд╖: "рдпреВ0рд╕реА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 64
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u0c"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u0c"
рд╢реАрд░реНрд╖: "рдпреВ0рд╕реА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u0c-d_New"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "u0c"
рд╢реАрд░реНрд╖: "рдпреВ0рдбреА"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 64
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 3
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}
рдкрд░рдд {
рдирд╛рдо: "relu_u0d"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "ReLU"
рдиреАрдЪреЗ: "u0d"
рд╢реАрд░реНрд╖: "рдпреВ0рдбреА"
}
рдкрд░рдд {
рдирд╛рдо: "conv_u0d-score_New"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдХрдирд╡рд▓реНрд╢рди"
рдиреАрдЪреЗ: "u0d"
рдЯреЙрдк рд╕реНрдХреЛрд░"
рдкрд░рдо {
lr_multi: 1
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 1
}
рдкрд░рдо {
lr_multi: 2
рдХреНрд╖рдп_рдорд▓реНрдЯреА: 0
}
рдХрдирд╡рд▓реНрд╢рди_рдкрд░рдо {
num_output: 2
рдкреИрдб: 0
рдХрд░реНрдиреЗрд▓_рд╕рд╛рдЗрдЬрд╝: 1
рд╡реЗрдЯ_рдлрд┐рд▓рд░ {
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рдЬреЗрд╡рд┐рдпрд░"
}
рдЗрдВрдЬрди: CAFFE
}
}

рдкрд░рдд {
рдирд╛рдо: "рдЬрд╛рдВрдЪ"
рдЯрд╛рдЗрдк рдХрд░реЗрдВ: "рд╕реЙрдлреНрдЯрдореИрдХреНрд╕"
рдиреАрдЪреЗ: "рд╕реНрдХреЛрд░"
рд╢реАрд░реНрд╖: "рдЬрд╛рдВрдЪ"
}

рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо @manutdzou
рдЖрдкрдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рд░реЗрдкреЛ рдореЗрдВ рдЕрдкрдирд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдорди рдХрд░реЗрдВрдЧреЗ?
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЙрдбрд▓-рдЪрд┐рдбрд╝рд┐рдпрд╛рдШрд░/manutdzou рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдЕрдкрдирд╛ рдХреЛрдб рдиреЛрдЯрдмреБрдХ рдФрд░ рдЕрдкрдиреЗ рдкреНрд░реЛрдЯреЛрдЯреЗрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкреЛрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ Baidu рдХреЗ рд▓рд┐рдВрдХ рдкреЛрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВ? рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рд░рд╛рд╣рдирд╛ рдХрд░реЗрдВрдЧреЗред рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдХрд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреЗрдкрд░ рд╣реИ рддреЛ рд╣рдо рдЗрд╕реЗ рднреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдореЗрд░рд╛ рдХреЛрдб рдФрд░ рдореЙрдбрд▓ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЗрд╕ рд░реЗрдкреЛ рдореЗрдВ рдкреНрд░рддрд┐рдмрджреНрдз рд╣реЛрдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА!

рдореИрдВ
07/07/2017 17:33 рдХреЛ рдкреИрдЯреНрд░рд┐рдХ рдХреНрд░рд╛рдЗрд╕реНрдЯ рдиреЗ рд▓рд┐рдЦрд╛:

рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо @manutdzou
рдЖрдкрдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рд░реЗрдкреЛ рдореЗрдВ рдЕрдкрдирд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдорди рдХрд░реЗрдВрдЧреЗ?
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЙрдбрд▓-рдЪрд┐рдбрд╝рд┐рдпрд╛рдШрд░/manutdzou рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдЕрдкрдирд╛ рдХреЛрдб рдиреЛрдЯрдмреБрдХ рдФрд░ рдЕрдкрдиреЗ рдкреНрд░реЛрдЯреЛрдЯреЗрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкреЛрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ Baidu рдХреЗ рд▓рд┐рдВрдХ рдкреЛрд╕реНрдЯ рдХрд░рддреЗ рд╣реИрдВ? рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рд░рд╛рд╣рдирд╛ рдХрд░реЗрдВрдЧреЗред рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдХрд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреЗрдкрд░ рд╣реИ рддреЛ рд╣рдо рдЗрд╕реЗ рднреА рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ, рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

MetaDev picture MetaDev  ┬╖  18рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dansteingart picture dansteingart  ┬╖  31рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

edvakf picture edvakf  ┬╖  29рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

cledoux picture cledoux  ┬╖  13рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

arnaudrenaud picture arnaudrenaud  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ