Extracting metrics from cellular pattern
显示 更早的评论
I'm trying to determine the width, height, area, and centroid of an scaly pattern shown in the attached image. I've tried using a gradient filter, edge detection, (see attached images) and various other functions, but the problem is I'm not able to get the edges to meet up and complete the cell pattern to where I can discern each cell as a separate object using, say, the regionprops function. I was hoping to get some guidance as to whether there are specific functions or established pre-processing steps I need in order to get the image in this format. Thanks in advance for any help!
2 个评论
Image Analyst
2024-9-14
I'm not exactly sure where the boundaries of the cell would be. In general, yes, in a very rough sense but not if you want it to be accurate down to the nearest pixel. Can you post an annotated one where you've drawn in the outlines, say, in red?
Would you be willing to place markers or points on the vertices of the cells? If so, a human assisted algorithm might work and be faster than trying to develop an automated algorithm, especially if you have only a handful of images, not thousands of them.
MBP
2024-9-14
采纳的回答
更多回答(1 个)
Image Analyst
2024-9-14
0 个投票
I think I can get fairly close. Can you give the code where you start with the image and get the binary/segmented image of the edges? Then I will try inverting the image and calling imerode and then bwmorph to grow them back out without joining them. Then call imclearborder (to get rid of partial blobs) and regionprops (to measure parameters).
By the way, you might like to look at my attached average cell shape demo, and my edge linking demo.

类别
在 帮助中心 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

