Thank you again for these amazing tutorials and explanations. You have helped me A LOT. Seriously. I was struggling with these analysis before finding your videos. I took notes of everything and watched it many times. Thanks a million!!
Hi, I’m trying to measure the staining intensity in one region compared between control and subject groups. Since there is only blue staining, is there any issue with just converting the image to RGB and then using Ctrl M and recording the mean to use in analysis (with the lower intensities being a higher number and darker intensities being a lower number)?
That *should* work. But one issue I could imagine running into is if the blue has slightly different reddish or yellowish staining in it between samples, or as a result of how the images are captured. I was also considering how "fainter" stains, closer to white, would have more of other colors involve - red + green. But the Measure tool may just simplify that anyway - I think it reads things as if they were on a grayscale spectrum, rather than a mix of colors. That said, you could ensure this by changing the images to grayscale (essentially "flattening" the color variety). I recommend giving both a try: see what the difference is when using Measure on the color images between treatment groups, and then re-test with the same images in grayscale. In theory there shouldn't be much difference between the values that Measure yields in these two situations, but it's worth a look.
@@kruneuro Thank you so much for your reply. I did try converting to greyscale and measuring and it gives the same exact values (as measuring the average mean on RGB image). Initially I was going to just use the blue histogram from the RGB images but then watched your video and realised that would’ve been a big mistake. Once again, thank you immensely for these videos and also your comment. You’re having a big impact on students (undergrad here). Keep up the amazing work ❤️!
@@am13134 Glad to have helped! These videos are definitely aimed for students (undergrad & grad) and some post-docs as well. I know it can be hard to find the right info, so I strive to keep posting videos when time permits. Thanks much!
Hi thanks for this amaizing tutorials!! I have to calculate diferent intensities of coloration with phloroglucinol (magenta specific stain for lignin). I think approach 3 custom color deconvolution then measure tool on RGB channel images.I have three questions please 1. If we only want to measure one colour intensity we can only click without selecting any other custom color for the other two options? 2. to express mayor color intensity as a posItive values. Since the scale goes from 0 (for black) to 255 (for white) we should use the formula 255-value or express as percentage with the formula (255-value)/255*100 3. And last is correct to use all the figure were different elements are stained?? For explample from photographs always taken at the same magnification that therefore always have the same square micrometers of surface.
So, I tried playing around with the color deconvo widget on a sample phloroglucinol stain I found online. After using the color picker to find "ideal" staining values, and then trying the "user defined" setting on that PG stain as well as a masson trichrome stain (from my video)... I'm not pleased with how the program handles the user-defined values. The outcome pictures just look really wrong, and aren't separating out the stains correctly. Maybe it's due to high potential for error in the user picking out the *exact* correct & ideal shade of the stain color. In any case, you may have better luck just using the deconvo's RGB setting and then averaging your results of the R + B channels. Alternatively, the Azan-Mallory setting isolates magenta a bit more cleanly. That said, try out the various other deconvo settings to see which one best separates out your stain from the background tissue coloring. For representing the color values and moreover the staining intensity, the second option (percentage of the inverse) is the most intuitive for viewers/readers. For your last question: Picture sizing standardization is always best. As far as what you decide to show - if you're asking whether or not you should show the images that are output by color deconvolution, that seems like a good idea but may not be required for your publication... unless it's just as an example. Showing the separated channels may be more visually important if there are very subtle differences that aren't easily seen from the original, non-deconvoluted photos.
Thank you. it's very helpful. Is Approach 3 good for PAS and Mercury Bromophenol blue stains? And what about Masson trichrome stain? could you clarify those, plz? Thanks
Hello! In general, I recommend Approach 3 for image analysis of many sorts of multi-color stains. I have used images for Masson trichrome, and so it works for that. I am less familiar with the other two stains. However, you'll notice that the color deconvolution function has presets for some of these stains. So instead of using the RGB preset, you can use the Masson Trichrome preset. I saw one for PAS... or at least H PAS (I don't know the difference; I haven't used either). There may be one for the mercury bromophenol. But if there isn't, I recommend either using RGB or using another stain preset that has similar color split-ups as MB stains.
@@nouramohamednabawy7606 I'm not a fan of approach 2. Instead, I think there's a custom setting in the color deconvolution tool. If you use that, you can enter the specific "ideal" color values for each stained element. Let's imagine if there were no setting for masson trichrome. What you should be able to do is use the color sampling tool (should look like a dropper icon) to find out the specific R,G, and B values of each part of the stain. So, you would find the R,G,B values for an ideal red/pink portion of the stain, R,G,B values for the ideal purple portion, and the same again for an ideal blue portion. After recording these values manually (in a notebook or excel), you should be able to enter them manually in the color deconvolution dialog's custom setting.
This is really fantastic, thank you for taking the time to put these up. Have you published Approach 3 anywhere? I'd like to cite you if possible. additionally, I'm trying to apply the threshold tool to be able to deconvolute true Oil red O stain from noise generated by the colour deconvolution, have you tried this before?
I appreciate the potential citation. Unfortunately, I haven't published work using that specific approach - I only have a lot of older data from which I extracted RGB values, and I have no desire to go back through and deconvolute all of those images! I think your approach for noise reduction sounds reasonable. I know that deconvolution can leave in a bit of background, so applying the threshold tool in as consistent of a manner as possible is a good idea.
Hi, I'm using approach 3 (verdict good) mentioned in this video, but now I have a question. Its advisable to use the threshold function? Or would it no longer be necessary since they are divided by channel (or color) and why? I would really appreciate your answer.
Hello, I don't think the threshold function would be appropriate here, though it depends on your goals. Thresholding flattens any image - color or otherwise - into a binary of black vs white. The approaches detailed in this video are aimed to measure differences in color of an image (original or deconvoluted), where the color spectrum is preserved. Thresholding is more appropriate for tasks like cell counting, stained area measurement, and/or creating stark boundaries between stained vs unstained elements in an image. If you are doing any of those tasks, then thresholding after color deconvolution is advised. The color deconvolution can isolate one stain from multiple others, then thresholding can allow for cell counting or area measurement of just that particular stain.
Hi! Thank you for such a helpful video. I'm trying to compare nuclei intensity. I have taken Approach 3 of Custom Color Deconvolution then Measure tool on RGB channel images. I first did that with my control images and measured the intensity of a couple of nuclei. Upon doing that, i've realized that the mean value for my darker nuclei are lower than my lighter nuclei. With the values the other way round, i'm unsure as to how to express my data. Would you be able to advice me on what to do? Thanks!
Also i'm trying to form a threshold based on my control image. Would it make sense to take 3 different 20x magnification images of the control. to those images, find the colour intensity of a 100 or so nuclei with the same roi. Following that, for one image, find the average intensity from the colour intensity of the 100 nuclei and do the same thing to the other 2 images. With those averages, find an average. And with this value, this will be my threshold and anything that goes above or below that will be positively or negatively stained. Sorry if this is all over the place but would this method be appropriate?
@@myfirstblackdress So, for the weird inverse value problem, I think you can normalize it into a more understandable metric (for readers of your work) by some manner of inverse calculation. One that comes to mind is: 255-value. If you wanted to do the same but in percentage, then it would be (255-value)/255 * 100. For your second question, I think I understand - you are trying to take large separate control datasets and repeatedly average them to get a consistent value. To clarify, you are saying that you are determining your own personal threshold, and you are *not* referring to the threshold function & values in ImageJ, correct? If that's so, I think your approach makes sense. You can then rate how much things differ (positive or negative) from your determined threshold as raw difference, percent change, or standard deviations - not sure which to choose, but those are all options.
@@kruneuro Thanks for your quick reply! I will apply the inverse calculation, that sounds great! Yes- I am trying to determine my own personal threshold. Okay I will determine which to choose! Thanks so much again!
hi i would like to contact you regarding fibrosis quantification may I get your email ID or may I request you plz upload the video of fibrosis quantification. thank you
Hello, for a few weeks now my laboratory colleague and I have been looking for step-by-step instructions for quantifying the intensity of red in images of C. elegans stained with Oil Red O. In the images, we have the stained animals and bacterial remains (which are the food source for nematodes) which also end up blushing, do you believe that this methodology is efficient for quantifying the red coloration of only the animals and then using it to compare the treatments with the control group?
I think the approaches in this video can work for your case (some were indeed tested with Oil Red O). However, the stains might have more utility if there were some way to semi-selectively label the bacterial fragments. That way, you could subtract the bacteria-preferring stain from the Oil Red O stain.
@@kruneuro Hello again, sorry for so many questions, but we are confused to finish our analyses. What is the best way to graphically represent the data obtained using the analysis described in method 3?
@@isamaracarvalho7551 No worries. I think the best way to represent the data is via bar graph (or "column chart" as it is sometimes called in excel). Note that the output of ImageJ in the "Mean" column is the "mean intensity value" for the selection that you made. But, you should average those mean intensity values so that you get an average across your samples. So, for your graph, the bars represent your averaged "mean intensity" values coming from your multiple selections. Insert custom error bars representing standard error of the mean (SEM). You can calculate SEM by using the stdev function on the cells containing your "raw means" , and then just putting divided by sqrt of number of values. If the comparisons are not complicated, t-tests should be fine.
@@kruneuro If I understood the explanation in the video correctly, values closer to 0 indicate a purer red, while values closer to 255 indicate lighter colors. If you put it that way on the bar graph, wouldn't it be confusing because it's the other way around?
@@isamaracarvalho7551 That's true. You can correct this counterintuitive scale by subtracting the value from 255 and having that result serve as the new value: 255 - 40 = 215 And, if you are worried that having the data represented on a scale 0 to 255 might be unclear to readers, you can convert it to a percentage: 215/255 = 84.3% You can call this value "Percentage of maximum possible staining intensity", or something similar.
Hi again! Could you help me with the unit measure that I should use to describe my results? I used 8-bit images and the mean gray value. Is it "pixels/micrometers²"? Or "pixels²"? Thanks again
If you're just describing color and are not specifying any measurement of area, the answer is technically "neither". The mean gray value is out of 256 (the scale goes from 0 at black/color to 255 at white). So, if you're making a bar graph of the mean gray values for each condition, perhaps you can make a more interpretable metric like "Percent of maximum staining". This would be (256 - [value]) / 256 * 100. If you were quantifying staining in fluorescent microscopy photos, then the equation would be simpler: [value] / 256 * 100. To the other point in your question, although you're not using the pixels per um metric in such a bar graph, it's important to note it in your paper's methods. An example might be: "Quantification was performed by selecting 200 um x 200 um areas within each image. Mean gray values were calculated within these selection boxes."
@@kruneuro hi! I measured the mean gray value of different regions of the picture with the same area of measurement. I analysed the histochemistry reaction in the tissues. Then, I compared the intensity (mean) of gray between the groups (treatment X control), and described if there was an increase or decrease in the histochemistry reaction when comparing to the control group. In my graphs I called as "optical density". I am still redacting the article for submission, so how do you believe I should correct these information? Thank you so much, you're really helping me A LOT 🙏🏻
@@mellanieferreira3491 Optical density is a metric I'm still not fully knowledgeable in, but I know this approach is not an optical density measurement. I think something similar to what I mentioned in the prior comment, or even just using a non-percentage version where you provide the averaged mean intensity of subjects in treatment. In that case, the y axis label could be "Mean intensity averaged across subjects".
Hello! If you are talking about 2D microscope images, I don't think there's a good way to measure thickness in that manner. That said, I suppose you could figure it out via staining intensity. This would require the stain to be homogenously distributed across the depth of the tissue. Thus, thicker tissue would be darker, and those differences in staining intensity/darkness could be measured as a proxy for thickness. Otherwise, if you're talking about a 3D image, via confocal or the like, and it's derived from an image stack, the thickness/Z-axis info should be displayed within the title bar if everything is calibrated correctly.
@@kruneuro Sir, I have similar pictures to that shown in this video. So, do I need to follow the steps as per the video for the staining intensity and then measure the thickness?
@@apoorvasondh You can follow the steps I show here, but you'll have to be clear that you're only measuring staining intensity when you report your methodology to others. I don't think we can guarantee that staining intensity is always a good proxy for thickness.
Thank you again for these amazing tutorials and explanations. You have helped me A LOT. Seriously. I was struggling with these analysis before finding your videos. I took notes of everything and watched it many times. Thanks a million!!
Glad I could help!
Hi, I’m trying to measure the staining intensity in one region compared between control and subject groups. Since there is only blue staining, is there any issue with just converting the image to RGB and then using Ctrl M and recording the mean to use in analysis (with the lower intensities being a higher number and darker intensities being a lower number)?
That *should* work. But one issue I could imagine running into is if the blue has slightly different reddish or yellowish staining in it between samples, or as a result of how the images are captured. I was also considering how "fainter" stains, closer to white, would have more of other colors involve - red + green. But the Measure tool may just simplify that anyway - I think it reads things as if they were on a grayscale spectrum, rather than a mix of colors. That said, you could ensure this by changing the images to grayscale (essentially "flattening" the color variety).
I recommend giving both a try: see what the difference is when using Measure on the color images between treatment groups, and then re-test with the same images in grayscale. In theory there shouldn't be much difference between the values that Measure yields in these two situations, but it's worth a look.
@@kruneuro Thank you so much for your reply. I did try converting to greyscale and measuring and it gives the same exact values (as measuring the average mean on RGB image). Initially I was going to just use the blue histogram from the RGB images but then watched your video and realised that would’ve been a big mistake. Once again, thank you immensely for these videos and also your comment. You’re having a big impact on students (undergrad here). Keep up the amazing work ❤️!
@@am13134 Glad to have helped! These videos are definitely aimed for students (undergrad & grad) and some post-docs as well. I know it can be hard to find the right info, so I strive to keep posting videos when time permits. Thanks much!
Thank you for this video. It really helped me to understand
Hi thanks for this amaizing tutorials!! I have to calculate diferent intensities of coloration with phloroglucinol (magenta specific stain for lignin). I think approach 3 custom color deconvolution then measure tool on RGB channel images.I have three questions please
1. If we only want to measure one colour intensity we can only click without selecting any other custom color for the other two options?
2. to express mayor color intensity as a posItive values. Since the scale goes from 0 (for black) to 255 (for white) we should use the formula 255-value or express as percentage with the formula (255-value)/255*100
3. And last is correct to use all the figure were different elements are stained?? For explample from photographs always taken at the same magnification that therefore always have the same square micrometers of surface.
So, I tried playing around with the color deconvo widget on a sample phloroglucinol stain I found online. After using the color picker to find "ideal" staining values, and then trying the "user defined" setting on that PG stain as well as a masson trichrome stain (from my video)... I'm not pleased with how the program handles the user-defined values. The outcome pictures just look really wrong, and aren't separating out the stains correctly. Maybe it's due to high potential for error in the user picking out the *exact* correct & ideal shade of the stain color. In any case, you may have better luck just using the deconvo's RGB setting and then averaging your results of the R + B channels. Alternatively, the Azan-Mallory setting isolates magenta a bit more cleanly. That said, try out the various other deconvo settings to see which one best separates out your stain from the background tissue coloring.
For representing the color values and moreover the staining intensity, the second option (percentage of the inverse) is the most intuitive for viewers/readers.
For your last question: Picture sizing standardization is always best. As far as what you decide to show - if you're asking whether or not you should show the images that are output by color deconvolution, that seems like a good idea but may not be required for your publication... unless it's just as an example. Showing the separated channels may be more visually important if there are very subtle differences that aren't easily seen from the original, non-deconvoluted photos.
@@kruneuro Thanks!!!
Thank you. it's very helpful. Is Approach 3 good for PAS and Mercury Bromophenol blue stains? And what about Masson trichrome stain? could you clarify those, plz? Thanks
Hello!
In general, I recommend Approach 3 for image analysis of many sorts of multi-color stains. I have used images for Masson trichrome, and so it works for that. I am less familiar with the other two stains. However, you'll notice that the color deconvolution function has presets for some of these stains. So instead of using the RGB preset, you can use the Masson Trichrome preset. I saw one for PAS... or at least H PAS (I don't know the difference; I haven't used either). There may be one for the mercury bromophenol. But if there isn't, I recommend either using RGB or using another stain preset that has similar color split-ups as MB stains.
Thank you for your reply! So you recommend using approach 2 for stains that hasn't preset in color deconvoltion?
@@nouramohamednabawy7606 I'm not a fan of approach 2. Instead, I think there's a custom setting in the color deconvolution tool. If you use that, you can enter the specific "ideal" color values for each stained element. Let's imagine if there were no setting for masson trichrome. What you should be able to do is use the color sampling tool (should look like a dropper icon) to find out the specific R,G, and B values of each part of the stain. So, you would find the R,G,B values for an ideal red/pink portion of the stain, R,G,B values for the ideal purple portion, and the same again for an ideal blue portion. After recording these values manually (in a notebook or excel), you should be able to enter them manually in the color deconvolution dialog's custom setting.
@@kruneuro Thank you very much! I'll try this method and let you know the result!
Thanks alot!
This is really fantastic, thank you for taking the time to put these up. Have you published Approach 3 anywhere? I'd like to cite you if possible.
additionally, I'm trying to apply the threshold tool to be able to deconvolute true Oil red O stain from noise generated by the colour deconvolution, have you tried this before?
I appreciate the potential citation. Unfortunately, I haven't published work using that specific approach - I only have a lot of older data from which I extracted RGB values, and I have no desire to go back through and deconvolute all of those images!
I think your approach for noise reduction sounds reasonable. I know that deconvolution can leave in a bit of background, so applying the threshold tool in as consistent of a manner as possible is a good idea.
You have to publish these analyzes so we can cite the references!!!
Hi, I'm using approach 3 (verdict good) mentioned in this video, but now I have a question. Its advisable to use the threshold function? Or would it no longer be necessary since they are divided by channel (or color) and why?
I would really appreciate your answer.
Hello,
I don't think the threshold function would be appropriate here, though it depends on your goals. Thresholding flattens any image - color or otherwise - into a binary of black vs white. The approaches detailed in this video are aimed to measure differences in color of an image (original or deconvoluted), where the color spectrum is preserved. Thresholding is more appropriate for tasks like cell counting, stained area measurement, and/or creating stark boundaries between stained vs unstained elements in an image. If you are doing any of those tasks, then thresholding after color deconvolution is advised. The color deconvolution can isolate one stain from multiple others, then thresholding can allow for cell counting or area measurement of just that particular stain.
Hi! Thank you for such a helpful video. I'm trying to compare nuclei intensity. I have taken Approach 3 of Custom Color Deconvolution then Measure tool on RGB channel images. I first did that with my control images and measured the intensity of a couple of nuclei. Upon doing that, i've realized that the mean value for my darker nuclei are lower than my lighter nuclei. With the values the other way round, i'm unsure as to how to express my data. Would you be able to advice me on what to do? Thanks!
Also i'm trying to form a threshold based on my control image. Would it make sense to take 3 different 20x magnification images of the control. to those images, find the colour intensity of a 100 or so nuclei with the same roi. Following that, for one image, find the average intensity from the colour intensity of the 100 nuclei and do the same thing to the other 2 images. With those averages, find an average. And with this value, this will be my threshold and anything that goes above or below that will be positively or negatively stained. Sorry if this is all over the place but would this method be appropriate?
@@myfirstblackdress So, for the weird inverse value problem, I think you can normalize it into a more understandable metric (for readers of your work) by some manner of inverse calculation. One that comes to mind is: 255-value. If you wanted to do the same but in percentage, then it would be (255-value)/255 * 100.
For your second question, I think I understand - you are trying to take large separate control datasets and repeatedly average them to get a consistent value. To clarify, you are saying that you are determining your own personal threshold, and you are *not* referring to the threshold function & values in ImageJ, correct? If that's so, I think your approach makes sense. You can then rate how much things differ (positive or negative) from your determined threshold as raw difference, percent change, or standard deviations - not sure which to choose, but those are all options.
@@kruneuro Thanks for your quick reply! I will apply the inverse calculation, that sounds great!
Yes- I am trying to determine my own personal threshold. Okay I will determine which to choose!
Thanks so much again!
Thank you!
hi i would like to contact you regarding fibrosis quantification may I get your email ID or may I request you plz upload the video of fibrosis quantification. thank you
Hello, for a few weeks now my laboratory colleague and I have been looking for step-by-step instructions for quantifying the intensity of red in images of C. elegans stained with Oil Red O. In the images, we have the stained animals and bacterial remains (which are the food source for nematodes) which also end up blushing, do you believe that this methodology is efficient for quantifying the red coloration of only the animals and then using it to compare the treatments with the control group?
I think the approaches in this video can work for your case (some were indeed tested with Oil Red O). However, the stains might have more utility if there were some way to semi-selectively label the bacterial fragments. That way, you could subtract the bacteria-preferring stain from the Oil Red O stain.
@@kruneuro Hello again, sorry for so many questions, but we are confused to finish our analyses. What is the best way to graphically represent the data obtained using the analysis described in method 3?
@@isamaracarvalho7551 No worries. I think the best way to represent the data is via bar graph (or "column chart" as it is sometimes called in excel). Note that the output of ImageJ in the "Mean" column is the "mean intensity value" for the selection that you made. But, you should average those mean intensity values so that you get an average across your samples. So, for your graph, the bars represent your averaged "mean intensity" values coming from your multiple selections. Insert custom error bars representing standard error of the mean (SEM). You can calculate SEM by using the stdev function on the cells containing your "raw means" , and then just putting divided by sqrt of number of values. If the comparisons are not complicated, t-tests should be fine.
@@kruneuro If I understood the explanation in the video correctly, values closer to 0 indicate a purer red, while values closer to 255 indicate lighter colors. If you put it that way on the bar graph, wouldn't it be confusing because it's the other way around?
@@isamaracarvalho7551 That's true. You can correct this counterintuitive scale by subtracting the value from 255 and having that result serve as the new value:
255 - 40 = 215
And, if you are worried that having the data represented on a scale 0 to 255 might be unclear to readers, you can convert it to a percentage:
215/255 = 84.3%
You can call this value "Percentage of maximum possible staining intensity", or something similar.
Hi again! Could you help me with the unit measure that I should use to describe my results? I used 8-bit images and the mean gray value. Is it "pixels/micrometers²"? Or "pixels²"? Thanks again
If you're just describing color and are not specifying any measurement of area, the answer is technically "neither".
The mean gray value is out of 256 (the scale goes from 0 at black/color to 255 at white). So, if you're making a bar graph of the mean gray values for each condition, perhaps you can make a more interpretable metric like "Percent of maximum staining". This would be
(256 - [value]) / 256 * 100.
If you were quantifying staining in fluorescent microscopy photos, then the equation would be simpler:
[value] / 256 * 100.
To the other point in your question, although you're not using the pixels per um metric in such a bar graph, it's important to note it in your paper's methods. An example might be:
"Quantification was performed by selecting 200 um x 200 um areas within each image. Mean gray values were calculated within these selection boxes."
@@kruneuro hi! I measured the mean gray value of different regions of the picture with the same area of measurement. I analysed the histochemistry reaction in the tissues. Then, I compared the intensity (mean) of gray between the groups (treatment X control), and described if there was an increase or decrease in the histochemistry reaction when comparing to the control group. In my graphs I called as "optical density". I am still redacting the article for submission, so how do you believe I should correct these information? Thank you so much, you're really helping me A LOT 🙏🏻
@@mellanieferreira3491 Optical density is a metric I'm still not fully knowledgeable in, but I know this approach is not an optical density measurement. I think something similar to what I mentioned in the prior comment, or even just using a non-percentage version where you provide the averaged mean intensity of subjects in treatment. In that case, the y axis label could be "Mean intensity averaged across subjects".
Hi, how do we measure thickness using the software?
Hello! If you are talking about 2D microscope images, I don't think there's a good way to measure thickness in that manner. That said, I suppose you could figure it out via staining intensity. This would require the stain to be homogenously distributed across the depth of the tissue. Thus, thicker tissue would be darker, and those differences in staining intensity/darkness could be measured as a proxy for thickness.
Otherwise, if you're talking about a 3D image, via confocal or the like, and it's derived from an image stack, the thickness/Z-axis info should be displayed within the title bar if everything is calibrated correctly.
@@kruneuro Sir, I have similar pictures to that shown in this video. So, do I need to follow the steps as per the video for the staining intensity and then measure the thickness?
@@apoorvasondh You can follow the steps I show here, but you'll have to be clear that you're only measuring staining intensity when you report your methodology to others. I don't think we can guarantee that staining intensity is always a good proxy for thickness.
@@kruneuro Okay sir, noted. Thank you for the guidance.