qupath / qupath

QuPath - Bioimage analysis & digital pathology
https://qupath.github.io
GNU General Public License v3.0
1.03k stars 276 forks source link

Mitosis Detection/Counting #205

Closed cklat closed 5 years ago

cklat commented 6 years ago

Hi there!

I'm trying to get my head around the functionalities of QuPath in terms of automatic object detection (or segmentation). I'm currently working on a project that comprises the detection of mitosis on H&E stained slides. Since I'm not a med student, I'm having a hard time to understand whether I can transfer the analysis process in the tutorials (e.g. https://github.com/qupath/qupath/wiki/Detecting-objects). For me it seems that QuPath can detect cells/nuclei (?) and determine if they are positive or negative for the Ki-67 marker (?). Does this analysis include some sort of mitosis detection? From the german wikipedia page, I understand that the Ki-67 marker can be used to mark dividing cells which would be mitosis detection as I see it. Can this detection process also be transferred to H&E stained slides by QuPath then in any way? If not could QuPath be of any help in mitosis detection on H&E stained slides other than manually annotating them?

Thanks a lot for your help!

Svidro commented 6 years ago

That sounds like it might be possible, as long as the mitotic nuclei are distinct enough visually to easily distinguish, but in the case of the Ki67 detection, that was done with DAB staining so the same method would not work on H&E slides. It is simply detecting "brown" in the cell.

Perhaps a higher Hematoxylin OD or something similar would work for your H&E slides. It sounds very similar to things done with deep learning already, but may be possible with either a scripted classifier or the classifier function in QuPath as long as you can give it a big enough training set.

Though, this seems like less of a QuPath technical issue, and more of a question for the forum.

petebankhead commented 6 years ago

QuPath gives the tools to do all kinds of things, but some are easier than others. Distinct commands (e.g. cell detection) can be combined with others (e.g. classifying cells as positive or negative, interactive machine learning) for particular applications (e.g. scoring Ki-67). But these or other commands could be combined in different ways for different applications. QuPath doesn't have a 'Ki-67 scoring' algorithm in particular, but it has the pieces that can be used to create and customize one.

However... there are a lot of things that I wouldn't try with QuPath's built in commands only, and mitosis detection in H&E is one of them. I'd say the detection task is too difficult and specialized for QuPath's generic cell detection currently. Solving that is a substantial research project in itself (and the subject of some grand challenges).

That's one of the reasons why QuPath supports scripts and extensions: it's possible to create highly specialist algorithms elsewhere, and either integrate them into QuPath or at least visualize the results through QuPath.

Therefore some of the ways in which QuPath can help are:

The first of these is pretty laborious, while the last three will take some effort and knowledge on the image analysis side. That's the side I come from... I created QuPath because I needed the tools myself to write new algorithms, and then to share them with pathologists and other researchers. For me, it's an algorithm development platform that takes away a lot of the difficulty in working with whole slide images. But I also try to make it user-friendly, as there's not much point in creating the algorithms if no one can use them...

I write some more about the technical side on my blog and as @Svidro says there are more posts on the applications on the Google Group.