Skip to content

๐Ÿš€ Capstone Project : Pathology Image & Web viewer ๐Ÿš€

Notifications You must be signed in to change notification settings

AI-STACK-dev/Web_FullStack_viewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

10 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

์กฐ์ง ๋ณ‘๋ฆฌ ์ด๋ฏธ์ง€์˜ ์•” ๋ถ€์œ„ ์‹œ๊ฐํ™” ๋ฐ ์›น ์„œ๋น„์Šค ์ œ์ž‘

๐Ÿ’ก ํŒ€ ๊ตฌ์„ฑ : Web Front-End & Back-End(FullStack), AI Developing

Capstone Project ๊ฐœ์š”

๐Ÿ’ก - ํฐ ์‚ฌ์ด์ฆˆ์˜ ๋ณ‘๋ฆฌ ์ด๋ฏธ์ง€์—์„œ์˜ Annotation์€ ์ƒ๋‹นํ•œ ์‹œ๊ฐ„๊ณผ ๋…ธ๋™๋ ฅ์ด ์†Œ๋ชจ๋œ๋‹ค.
๐Ÿ’ก - ํ˜„์žฌ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ œ๊ณต๋˜๋Š” Whole Slide Image๋Š” ๋ทฐ์–ด๋‚˜ Annotation์„ ๋ณ‘์› ๋‚ด ์„œ๋ฒ„ ์ €์žฅ์†Œ๋‚˜ ๋กœ์ปฌ์„ ํ†ตํ•ด ์ง„ํ–‰๋ผ, ์ €์žฅ๊ณต๊ฐ„ ๋“ฑ์„ ์†Œ๋ชจํ•˜๊ฒŒ ๋œ๋‹ค. 

๋ณ‘๋ฆฌ ์ด๋ฏธ์ง€๋ฅผ ๋‹ค๋ฃจ๋ฉด์„œ ์‹ค์ œ ๋ณ‘๋ฆฌ๊ณผ ์ „๋ฌธ์˜ ๋ถ„๋“ค๊ป˜ ์ด์•ผ๊ธฐ๋ฅผ ๋“ค์–ด๋ณด๊ฑฐ๋‚˜ ๋ณ‘๋ฆฌ์ด๋ฏธ์ง€์™€ ๊ด€๋ จ๋œ ๋…ผ๋ฌธ์„ ์ฝ๊ฒŒ ๋˜๋ฉด ์ž์ฃผ ๋‚˜์˜ค๋Š” ์ด์•ผ๊ธฐ๋Š” Annotation์ž…๋‹ˆ๋‹ค. ํฐ ์‚ฌ์ด์ฆˆ์˜ ๋ณ‘๋ฆฌ ์ด๋ฏธ์ง€๋ฅผ Zoom-in, Zoom-out์„ ํ•˜๋ฉฐ ์ผ์ผ์ด ํ™•์ธํ•ด์•ผํ•˜๋ฉฐ ์ด์— ๋”ฐ๋ฅธ Cancer Segmentation, Bounding Box๋“ฑ ๋‹ค์–‘ํ•œ Annotation์„ ์ง„ํ–‰ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, ์ƒ๋‹นํ•œ ์‹œ๊ฐ„๊ณผ ๋…ธ๋™๋ ฅ์ด ์†Œ๋ชจ๋ฉ๋‹ˆ๋‹ค.

โ†’ Annotation์ด ์ง„ํ–‰๋˜๋Š” Tool์—์„œ ์„ฑ๋Šฅ์ด ์ข‹์€ AI model์ด ์žˆ์„ ๊ฒฝ์šฐ, ์ฐธ๊ณ ์šฉ์œผ๋กœ ํ™•์ธํ•˜๋ฉฐ Annotation์„ ์ง„ํ–‰ํ•˜์—ฌ ์‹œ๊ฐ„ ์ ˆ์•ฝ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ ๋ณ‘๋ฆฌ Annotation Tool์€ ๋กœ์ปฌ ํ™˜๊ฒฝ์œผ๋กœ ์ด๋ฏธ์ง€๋ฅผ ์˜ฎ๊ฒจ์„œ Annotation์„ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ €์žฅ๊ณต๊ฐ„ ๋“ฑ์˜ ๋กœ์ปฌํ™˜๊ฒฝ์— ์˜ํ–ฅ์„ ๋ผ์น˜๋Š” ๋ฌธ์ œ๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

โ†’ Annotation์ด ์ง„ํ–‰๋˜๋Š” ํ™˜๊ฒฝ์ด Web Server๋‹จ์—์„œ ์ œ๊ณต์ด ๋  ๊ฒฝ์šฐ, ๋ฉ”๋ชจ๋ฆฌ, ์ €์žฅ๊ณต๊ฐ„์˜ ์ œ์•ฝ์„ ์ƒ๋Œ€์ ์œผ๋กœ ๋œ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ณ , ์ธํ„ฐ๋„ท๋งŒ ์žˆ์œผ๋ฉด ์ž‘์—…ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿš€ ํ˜„์žฌ๊นŒ์ง€์˜ ์‹œํ–‰, ์ œํ’ˆ

QuPath | Quantitative Pathology & Bioimage Analysis


QuPath๋Š” ๋ณ‘๋ฆฌ Annotation tool์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ์ปฌ์˜ ์ด๋ฏธ์ง€๋“ฑ์„ ํ”„๋กœ๊ทธ๋žจ์— ์—…๋กœ๋“œํ•˜์—ฌ Annotation์„ ์ง„ํ–‰ํ•˜๊ณ  Annotation file์„ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

โ†’ AI Cancer Segmentation, Web Sevice์˜ ๊ธฐ๋Šฅ์€ ์•„์ง ๋„์ž…๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

ASAP | Automated Slide Analysis Platform


ASAP์€ QuPath์™€ ๋™์ผํ•˜๊ฒŒ Annotation tool์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ํ”„๋กœ๊ทธ๋žจ ๋˜ํ•œ ์ด๋ฏธ์ง€๋ฅผ ์—…๋กœ๋“œํ•˜์—ฌ ์ง„ํ–‰ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

โ†’ AI Cancer Segmentation, Web Sevice์˜ ๊ธฐ๋Šฅ์€ ์•„์ง ๋„์ž…๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

Cytomine


Cytomine์€ ์ €ํฌ๊ฐ€ ํƒ€๊ฒŸ์œผ๋กœ ์‚ผ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์›น ์„œ๋ฒ„์—์„œ ๋ณ‘๋ฆฌ ์ด๋ฏธ์ง€๋“ค์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ Annotation๊ณผ Cloud ์„œ๋น„์Šค ๋“ฑ์„ ์ œ๊ณต ์ค‘์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋จธ์‹ ๋Ÿฌ๋‹์— ๋Œ€ํ•œ ์„œ๋น„์Šค๋„ ์ œ๊ณต ์ค‘์— ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ํ™•์ธ๋˜๊ณ  ์žˆ์ง€๋งŒ ํ•ด๋‹น ํ”Œ๋žซํผ์€ ์„œ๋น„์Šค๋“ค์„ ์œ ๋ฃŒ๋กœ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

โ†’ ์ œ๊ณต๋˜๋Š” ๊ธฐ๋Šฅ๋“ค์€ ๋ชจ๋‘ ์ €ํฌ๊ฐ€ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ์„œ๋น„์Šค์™€ ๋น„์Šทํ•˜์ง€๋งŒ ์„œ๋น„์Šค๋“ค์ด ์œ ๋ฃŒ๋กœ ์ œ๊ณต๋˜๊ณ  ์žˆ๋Š” ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค.

๐Ÿฅ… Objective


  • ๋ณ‘๋ฆฌ์ด๋ฏธ์ง€๋ฅผ ์›น ์„œ๋ฒ„์—์„œ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. - Node.js
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ตฌ์ถ•ํ•˜์—ฌ ์ด๋ฅผ ํ†ตํ•ด ๋ณ‘๋ฆฌ์ด๋ฏธ์ง€๋“ค์„ ๋ณด๊ด€ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. - MySQL
  • Annotation Tool์„ Web์—์„œ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.(์„œ๋ฒ„์— ๊ตฌํ˜„ ์ ์šฉ)
  • Zoom-in, Zoom-out์˜ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
  • Annotation์— ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋Š” ๋ณ‘๋ฆฌ์ด๋ฏธ์ง€ Cancer ์˜ˆ์ธก ๋ชจ๋ธ์„ ์ œ๊ณตํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. - Pytorch
  • AI Cancer Segmentation์˜ ์†๋„๋ฅผ ๋” ๋น ๋ฅด๊ฒŒ ์›น์— ๋ฐ˜์˜๋˜๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. -Python

๐Ÿ•‘ In-process


  • MySQL ๊ณผ Node js๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„์˜ ๋กœ๊ทธ์ธ ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜์˜€๊ณ  ์นด์นด์˜ค ๋กœ๊ทธ์ธ๋„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • ํ˜„์žฌ๋Š” ํ•˜๋“œ๋””์Šคํฌ๋ฅผ ํ†ตํ•ด ์ด๋ฏธ์ง€๋“ค์„ ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ณง ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์„ค๊ณ„ํ•œ๋’ค ์ด๋ฅผ ํด๋ผ์ด์–ธํŠธ์™€ ์—ฐ๊ฒฐํ•˜๋Š” ์ž‘์—…์„ ์ง„ํ–‰ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ํ˜„์žฌ ์›น ๊ธฐ๋Šฅ์œผ๋กœ๋Š” ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ์—…๋กœ๋“œ ๋‹ค์šด๋กœ๋“œ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์„ค๋ช…์„ ์ˆ˜์ • ํ•  ์ˆ˜ ์žˆ๋Š” ์—…๋ฐ์ดํŠธ ๊ธฐ๋Šฅ ๊ทธ๋ฆฌ๊ณ  ์‚ญ์ œ ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„ ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • Node js ์™€ python ์„ ์ด์šฉํ•ด Predict ๋ฒ„ํŠผ์„ ํ†ตํ•ด AI Cancer Segmentation์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์†Œ๋ชจ๋˜๋Š” ์‹œ๊ฐ„์€ 20~30seconds ์ •๋„์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ์ค„์ด๋Š” ๋ฐฉ์•ˆ์„ ๋ชจ์ƒ‰์ค‘์— ์žˆ์Šต๋‹ˆ๋‹ค.
  • Predict ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„ ๋•Œ, ์†Œ๋ชจ๋˜๋Š” ์‹œ๊ฐ„์„ ๊ณ ๋ คํ•˜์—ฌ Loading Bar๋ฅผ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • ์›น ์„œ๋ฒ„์—์„œ ์ด๋ฏธ์ง€์˜ Zoom-in, Zoom-out๊ณผ Annotation Tool์„ ์ œ๊ณตํ•˜๋„๋ก ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๐Ÿ“– Reference


  • Daisuke Komura and Shumpei Ishikawa. "Machine Learning Methods for Histopath ological Image analysis" Computational and structural Biotechnology Journal, 16(2018), p.34-42
  • Le Hou, Dimitris Samaras, Tashin M.Kurc, Yi Gao, James E. Davis et al. "Patch-based Convolutional Neural Network for Whole Slide Tissue Image Classification" In CVPR, 2016.

๐Ÿ“– Reference(etc.)


About

๐Ÿš€ Capstone Project : Pathology Image & Web viewer ๐Ÿš€

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published