我是一名研究生,攻读生物医学科学博士学位,没有编码经验。我的大学拥有MATLAB的校园许可证,所以我想我会尝试学习如何使用它来更准确地处理我的一些图像。也就是说,我有一系列非常相似的细胞图像(10-15个细胞/图像)从组织中迁移出来。我希望能够使用MATLAB测量每个细胞和组织之间的距离(如果可能的话,标准化为组织的大小)。我一直在阅读计算机视觉系统工具箱中可用的工具,例如在杂乱的场景中进行物体检测,但我不确定它们是否相关。我也不知道如何将我的图像导入MATLAB。我不是在找人为我做这些事情;相反,如果有人能指出我正确的方向(我应该看的工具,对初学者有用的阅读等),我真的很感激。
答案 0 :(得分:4)
此处获得生物学博士学位:)
计算机视觉工具箱并不是您真正需要的,基本图像处理任务所需的是图像处理工具箱。
转到matlab文档(您可以在控制台中使用doc
命令),如果您安装了图像处理工具箱,那么应该从文档'主页&#39中找到其文档的链接。 ;
或者,要获取图像处理工具箱中可用的(大)命令列表,请在控制台中键入help images
。如果您想查找特定关键字,可以使用lookfor
,例如如果您输入lookfor distance
,您将看到计算距离变换的bwdist
命令的一个结果。
阅读和显示图片的基本命令是imread
和imagesc
这里有一个小例子,说明如何使用它来查找单元格距离。 (逐行运行这些命令,每次都看到结果)。
Img = imread('rice.png') % Read rice.png image into array I
(注意:' rice.png'是一张在matlab中准备好的图片,位于matlab'路径中,即无论您使用哪个目录,都可以访问它。 #39;现在重新开始。您可以通过输入which rice.png
来查看计算机上的确切位置。此外,如果您不想要它,可以在每个命令之后取消所有输出,结束使用' ;
')
Img
现在是一个矩阵,包含从0到256的整数值(即类型'无符号整数')。我们经常使用'灰度'而是[0,1]范围内的图像(即类型' double')。
Img = mat2gray(Img) % convert to grayscale image.
imagesc(Img) % visualise image
colormap gray % convert to grayscale colours
BinaryImg = (Img > 0.5) % retain only pixels with intensity above 0.5;
imagesc(BinaryImg) % visualise binary version
BinaryImg = bwareaopen(BinaryImg,10) % clean up image by removing objects less than 10 pixels big. type 'help bwareaopen' in the console for details
imagesc(BinaryImg) % see how the image has now cleaned up a bit
DistanceTransform = bwdist(BinaryImg)
imagesc(DistanceTransform) % each pixel value represents distance to nearest object (i.e. nearest 'true' pixel in binary image)
colorbar % helps you see what those distances are
colormap jet % this is a nicer map for distance images :)
希望这会有所帮助。祝你旅途愉快:)
答案 1 :(得分:0)
请参阅计算机视觉工具箱,特别是matlab文档中的matchFeatures函数。
link:http://in.mathworks.com/help/vision/ref/matchfeatures.html