d_kishkinev (d_kishkinev) wrote,
d_kishkinev
d_kishkinev

Automatic cell counting using computer vision and open source software

Народ, есть задача - наладить (полу)автоматический workflow для подсчета иммунопозитивных (прокрашенных) нейронов мозга, используя какие-нибудь надежные, проверенные, хорошо задокументированные программы с открытым кодом. Программа должна использовать computer vision и deep learning, чтобы обучаться распознаванию объектов более гибко, нежели чем делают простые алгоритмы (типа классических cell counting plugins в той же самой ImageJ / Fiji, где просто берется размер и roundiness объекта). Желательно, чтобы это был не проприетарный инструмент типа Matlab (пусть даже хороший), а что-то к примеру на opencv в Python или подобное.

Вот пример данных (картинка внизу). Это кусочек птичьего мозга из "птичьего гиппокампа":

R2-S5-2020-08-28T20-30-38(1)_7.0x.jpg

1) обратите внимание на бурые точки (это иммунопозитивные ядра нейронов - их и нужно подсчитывать, а всё остальное не нужно).

2) Обратите внимание, что фон довольно сложный. Алгоритм должен выделять только бурые ядра на этом фоне, и false positive detection rate (т.е. неправильно определенные объекты) должен быть низким.

3) желательно не только подсчитывать количество "бурых точек", но и среднюю интенсивность окраски каждого ядра (тогда можно будет делать анализ распределения "бурости"). Дело в том, что интенсивность иммунопозитивной окраски является proxy (оценочным показателем) экспрессии прокрашенного белка - маркера нейроннальной активности (мы прокрашивали против маркера ZENK - это такой регуляторный белок, который экспрессируется в нейроне одним из первых после начала активности). Зачем нужно мерить не просто есть точка/нет точки? Может быть такое, что количество активных нейронов у разных особей не сильно отличается, но их активность, выявленная по "бурости", будет отличаться, а может быть комбинация.

Нет в гугле/поисковиках не забанили и кое-что я нашел, но проблема в том, что слишком много всего и найти подходящее и отсеить неподходящее сейчас очень и очень сложно. Вот что я уже нашел. Пока что лучшее что кажется может работать - DeepImageJ плагин на Java для Fiji. Больше инфы под катом (может кому-то тоже пригодится хотя бы для начала поиска).

UPD

Ну таки я научился это делать с помощью программы QuPath - вот примерно как это выглядит можно посмотреть по ссылке - скроллить вниз.


Unknown platforms (do not know if python or ImageJ or other framework – need to read)
1) Cellcount

A Convolutional Neural Network for Segmenting and Counting Cells in Microscopy Images
Github library, need to check it out
https://github.com/cxhernandez/cellcount

Article can be downloaded as PDF here
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwiBwtL9jb_tAhW7wuYKHVgADeIQFjABegQIBhAC&url=https%3A%2F%2Fwww.mdpi.com%2F2073-4409%2F8%2F9%2F1019%2Fpdf&usg=AOvVaw1aqElMsKlGt_SFkHyvHiPp

Web applications
1) CellCountCV

Sensors (Basel). 2020 Jul; 20(13): 3653.
Published online 2020 Jun 29. doi: 10.3390/s20133653
PMCID: PMC7374276
PMID: 32610652
CellCountCV—A Web-Application for Accurate Cell Counting and Automated Batch Processing of Microscopic Images Using Fully Convolutional Neural Networks
Denis Antonets,1,2,3,* Nikolai Russkikh,1,2 Antoine Sanchez,4 Victoria Kovalenko,5 Elvira Bairamova,5 Dmitry Shtokalo,1,6,7 Sergey Medvedev,5 and Suren Zakian5
1A.P. Ershov Institute of Informatics Systems SB RAS, Novosibirsk 630090, Russia; ur.gorpn@hkikssur (N.R.); ur.gorpn@yrtimd (D.S.)
2Novel Software Systems LLC, Novosibirsk 630090, Russia
3State Research Center of Virology and Biotechnology “Vector” Rospotrebnadzor, Koltsovo 630559, Russia
4Grenoble Institute of Technology ENSE3, 38031 Grenoble, France; moc.liamg@sehcnas.eniotna
5The Federal Research Center Institute of Cytology and Genetics SB RAS, Novosibirsk 630090, Russia; ur.sgn@r_vok (V.K.); moc.liamg@arivleavomariab (E.B.); ur.csn.tenoib@vedevdem (S.M.); ur.csn.tenoib@naikaz (S.Z.)
6AcademGene LLC, Novosibirsk 630090, Russia
7St. Laurent Institute, Woburn, MA 01801, USA
*Correspondence: ur.xednay@cenotna; Tel.: +7-(923)-251-81-78
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7374276/


ImageJ / Fiji based
1) U-Net

U-Net: deep learning for cell counting, detection, and morphometry
January 2019Nature Methods 16(1)
DOI: 10.1038/s41592-018-0261-2
Project: Deep Learning for biomedical image analysis
Plugin to ImageJ for cell counting
https://www.researchgate.net/publication/329716031_U-Net_deep_learning_for_cell_counting_detection_and_morphometry

2) DeepImageJ
DeepImageJ: A user-friendly plugin to run deep learning models in ImageJ Estibaliz G ́omez-de-Mariscal1,**, Carlos Garc ́ıa-L ́opez-de-Haro1,**, Laur`ene Donati2,Michael Unser2, Arrate Mu ̃noz-Barrutia1,*and Daniel Sage2,*1Bioengineering and Aerospace Engineering Department, Universidad Carlos III de Madrid, 28911 Legan ́es, andInstituto de Investigaci ́on Sanitaria Gregorio Mara ̃n ́on, 28007 Madrid, Spain2Biomedical Imaging Group, ́Ecole polytechnique f ́ed ́erale de Lausanne (EPFL), Switzerland*Corresponding authors mamunozb@ing.uc3m.es, daniel.sage@epfl.ch**Equally contributed
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjalIXJkL_tAhXnSRUIHU7VCsE4ChAWMAd6BAgJEAI&url=https%3A%2F%2Fdeepimagej.github.io%2Fdeepimagej%2Funet_documentation.pdf&usg=AOvVaw3Tnj744RehRY5Abvn7yJp5
This paper refers to this github with DeepImageJ
https://deepimagej.github.io/deepimagej/
plugin


Article describing the general approach for counting objects using convolutional networks
1) Real-time cell counting in microscopy images using Neural Networks
Dmitry Urukov
https://medium.com/analytics-vidhya/real-time-cell-counting-in-microscopy-images-with-neural-networks-d630c2a5b6c4

2) Objects Counting by Estimating a Density Map With Convolutional Neural Networks
Tomasz Bonus
Written by Tomasz Bonus and Tomasz Golan.
https://towardsdatascience.com/objects-counting-by-estimating-a-density-map-with-convolutional-neural-networks-c01086f3b3ec



Tags: ai, computer vision, magnetic sense, magnetoreception, microscopy, neuroethology, neuroscience, python, science
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments