文件交换
107下载
更新2008年3月6日
查看许可证
简单但有效的“区域增长”的例子,从一个种子点。
该区域通过将所有未分配的相邻像素与该区域进行比较来迭代增长。像素强度值和区域平均值之间的差值用作相似性度量。以这种方式测量的差异最小的像素被分配到该区域。
当区域平均值和新像素之间的强度差大于某个阈值时,此过程停止
Dirk-Jan克朗(2021)。区域增长(//www.tatmou.com/matlabcentral/fileexchange/19084-region-growing),MATLAB中央文件交换。恢复2021年6月13日.
2021年5月26日
谁能告诉我我们如何纠正这个错误区域增长错误(第29行)如果(exist('y','var')==0),图,imshow(I,[]);[y,x]=getpts;y=round(y(1));x=round(x(1));终止
2021年5月7日
2021年3月7日
2021年1月22日
如何了解区域的增长情况
2020年4月16日
2019年12月10日
这个代码有相应的纸吗?
2019年10月31日
2019年8月8日
2019年6月20日
2019年4月21日
2019年2月5日
I = (im2double (imread (mdb005.pgm)));图中,imshow(我);x=200;y=750;J = regiongrowing(我,x, y, 0.2);
我得到这个错误:
类型为“double”的输入参数的未定义函数“regionRowing”。
(第4行)中的错误J = regiongrowing(我,x, y, 0.2);
2018年12月10日
2018年10月21日
asmae mama:如果您阅读代码中的示例,您必须将输入数据转换为double,“我= im2double (imread (' medtest.png '));“
2 2018年8月
2018年6月21日
你好,我是matlab中的biginner,我有这个算法,但它不能运行;I=(rgb2gray(imread('image.jpg'));图中,imshow(我);x = 205;y = 2562;J = regiongrowing(我,x, y, 0.2);如何避免此错误:类型为“uint8”的输入参数的未定义函数“regionRowing”。
2018年4月19日
2018年4月6日
2017年12月26日
2017年12月11日
你好,我是新来的。我的电脑系统是MAC OS 10.10.5,NVIDIA GeForce GT 640M 512 MB。每当我运行你的代码时,它就会一直运行,我的电脑就会变慢。但没有产出。
2017年11月22日
我正在运行这个算法
2017年11月10
考虑到这款游戏有40K以上的下载量,我认为我应该指出集群距离度量是错误的。具体来说,我认为平均值的计算是错误的。变量reg_size是在计算平均值之前更新的,它应该在计算平均值之后更新。
2017年11月9日
嗨……它简单易懂。有没有可能我们可以自动计算阈值而不是硬编码?
2017年9月22日
2017年6月29日
要解决这个问题:区域增长错误(第69行)dist=绝对值(负列表(1:负位置,3)-平均值);您需要按照以下方式读取图像:Im=double(rgb2gray(imread('title.format'));问题是矩阵的格式,但如果你把它翻倍,它完全可以。
2017年5月30日
如何避免以下错误:错误使用,整数只能与同一类的整数或双精度标量组合。
区域增长错误(第69行)dist=绝对值(负列表(1:负位置,3)-平均值);
2017年5月23日
嗨,我想把均值相近的区域提取出来作为一个单独的矩阵,然后在那个区域中计算一些值。你能告诉我如何在你的功能中实现这个吗?
2017年4月4
我如何运行这个程序
2017年3月24日
谢谢
2017年3月23日
itz有用. .
2017年2月1日
谢谢你的解释
2017年1月17日
效果很好
2016年9月6日
帮我自动提取图像的特定区域
2016年8月8日
它工作得很好
2016年7月21日
有谁能帮忙吗?我尝试了这个代码,我得到了以下错误:输入参数不足。
区域增长错误(第29行)如果(exist('y','var')==0),图,imshow(I,[]);[y,x]=getpts;y=round(y(1));x=round(x(1));终止
2016年7月6
2016年6月19日
如何使种子自动生长在感兴趣的地区?有人知道吗?
2016年5月5日
如何解决此问题..帮助我,…已达到最大递归限制500。请使用set(0,'RecursionLimit',N)更改限制。请请注意,超出可用堆栈空间可能会使MATLAB和/或计算机崩溃。
2016年4月30日
当使用此代码[x,y]=getpts(图)或[y,x]=getpts(图)不起作用时,请帮助我如何计算x和y值
2016年3月17日
感谢您的出色工作,但这段代码中存在一个小错误,Matlab使用水平轴(向右)作为X方向,垂直轴(向下)作为Y方向,我们从Matlab文档中得到,[X,Y]=getpts(图),而不是您在代码中编写的[Y,X]=getpts(图),这可能会产生误导,需要我花几个小时才能弄清楚!
2016年3月16日
我在哪里可以得到这个代码的描述??
2016年3月4日
干得好,谢谢
2016年2月8日
在使用给定的示例代码和示例(第21行)时,我遇到了以下错误:已达到最大递归限制700。请使用set(0,'RecursionLimit',N)更改限制。请注意可用堆栈空间可能会使MATLAB和/或计算机崩溃。
ismember>IsMemberBuiltypes中出错
有人能帮我吗?
MATLAB R2014a
2016年2月1日
你好,有人能告诉我如何运行这个代码吗?我一直得到一个错误。(对matlab非常陌生)
2016年1月17日
是的,我可以帮你瓦西姆先生。。。
2016年1月16日
你好,我正在做一个关于非接触式指纹检测的项目,有人能帮我编写区域增长的matlab代码吗
2016年1月3日
2015年12月3
2015年11月25日
嗨,所有我运行此代码,但遇到以下错误:
?输入参数“I”未定义。
==>区域划船在29时出错如果(exist('y','var')==0),图,imshow(I,[]);[y,x]=getpts;y =圆(y (1));x =圆(x (1));终止
有人知道我该怎么解决这个问题吗?谢谢
2015年7月28日
相似性度量是像素的强度值与当前正在处理的区域平均值之间的差值,因此它是相对的。这种区域生长算法有名字吗?像是渐进式的还是适应性的?或者这只是一个不同的相似性度量?
2015年4月26日
我有一个灰度肺CT图像,范围在0-256之间的值:0,52,然后值> 90,我想分割。我给阈值= 75,但结果蒙版仍然包括所有的图像,而不是内部的值> 75 ..这里怎么了?
2015年1月30日
??尝试访问neg_list(0,:);索引必须是一个正整数或逻辑数。
==>区域划船在80时出错neg_list(指数:)= neg_list (neg_pos:);neg_pos = neg_pos-1;
2014年10月24日
干得好。谁能告诉我如何改变区域的颜色?
2014年10月7日
优秀的算法;非常感谢。
2014年7月11日
简单的程序,易于使用的医学图像。
2014年6月20日
你好,谢谢,想要详细信息吗
2014年5月25日
???下标下标必须是实正整数或逻辑数。
==>区域划船在34时出错reg_mean=I(x,y);%分割区域的平均值
如何解决这个问题请尽快回复
2014年4月27日
我得到一个错误:“没有足够的输入参数”请帮助我如何解决这个问题,请告诉我如何传递输入参数?
2014年3月12日
想要详细资料吗
2014年3月1日
谢谢你的功能。图像处理工具箱中的好代码。
2013年11月28日
为了避免此错误,您必须通过以下方式将图像转换为double类型:I=2倍(I);(一是形象)
2013年11月27日
??? 使用==>减号时出错不支持操作数类。金宝app
==>区域划船在69时出错dist=绝对值(负列表(1:负位置,3)-平均值);
这个问题怎么解决?
2013年11月18日
你们能分享正确的代码吗?
2013年10月11日
你好,
如果有人知道使用多个种子点的地区种植的例子,请分享!谢谢你!
问候,安娜
2013年8月29日
工作得很有魅力,感谢您提供此代码。
2013年8月16日
嗨……我在执行这段代码时发现了一个错误。错误细节如下:
错误使用,整数只能与同一类的整数或双精度标量组合。
谢谢!
2013年5月8日
请回答我的问题。我已经给你发了很多邮件,这个代码不是很好,因为我只得到一个白色的图像。我需要我用种子点选择的ROI。请回复。
2013年4月22日
很好
2013年3月21日
您好…我在执行此代码时发现一个错误。错误的详细信息如下:
??? 使用==>减号时出错整数只能与同一类的整数组合,或标量双打。dist=绝对值(负列表(1:负位置,3)-平均值);谢谢!
2012年8月18日
我应该说,这对像我这样的初学者非常有帮助,但我有一个疑问,我们可以根据什么来确定reg_max distance的值如果我们选择分割一个特定的区域
2012年8月9日
我已经尝试了图像大小512*512的代码。在提供了x和y值之后,我得到了大小相同的512*512的J,所有的白色图像。没有细分。请建议!
2012年6月5日
你能给我一些示例参数吗?
2012年5月28日
我也不能下载这个文件。谁来帮忙?
2012年4月17日
你好,谢谢你!
2012年3月22日
2012年3月13日
我无法下载文件....帮助我! !
2011年12月30日
Thq Dirk Jan Kroon为如此短的代码。我正在处理dicom图像。我将其转换为JPG。我在运行时遇到问题。
??? 输入的未定义函数或方法“RegionRowing”double类型的参数。
我甚至定义了im2double()fnc,但我得到了一个错误。。。
2011年12月17日
你好,我如何使它工作的3D图像?
谢谢你!
2011年11月22日
2011年11月21日
什么是x和y,我相信图像(x,y)坐标,但当我测试其他x,y值(例如,x=308,y=244, I(x,y)=0.73),然后分割的结果图像是不理想的。
2011年10月17日
2011年10月12日
非常有用,谢谢!
2011年9月25日
很有帮助!谢谢你!very much!!!
2011年5月28日
我已经下载了这段o代码,但当我试图在同一个图像上运行时,即medtest.png,我得到了以下错误。你能告诉我哪里出了问题,怎么解决吗> > regiongrowing??? 已达到最大递归限制500。使用集合(0,'RecursionLimit',N)改变限制。请注意,超出可用堆栈空间可能会导致使MATLAB和/或你的计算机崩溃。
==>isstruct在99时出错塔克斯
2011年3月29日
我将reg_maxdist改为10,没有问题。有人知道如何将区域增长用于3D矩阵吗?谢谢你!
我从一个3D数据矩阵“Y”得到一个核磁共振成像结果,所以它是Y(:,:, 14)。这个算法在这个政变上不起作用。在结果中,我只有一个白色像素(种子点)。我改变了第70行,但它没有改变任何东西。你能帮我吗?
2011年1月6日
有人能解释一下怎样分割颈动脉吗?
2010年12月5日
这看起来很酷!但我想知道用这个程序处理更大的图像(例如卫星数据)。有什么建议吗?在我的例子中,我没有得到任何错误,但处理一个只有15 Mb的10位全色图像子集不会得到有价值的结果。将高度赞赏任何关于matlab的工作流程的想法为这个目的!谢谢
2010年11月22日
多谢各位!
2010年6月22日
如果像例子中那样使用im2double和imread,则不需要更改第70行(第21行-注释部分)
2010年6月8日
代码的工作方式和罗恩不同。我得换乘70号线。
但是,我没有得到16位灰度的分段/阈值输出!谢谢
如果有人能告诉我问题是什么,那就太好了!
2010年2月2日
非常有用的代码。
2009年12月12日
你好所有的,首先我想感谢Dirk的工作和所有的matlab社区,因为这对我很有帮助。我需要用区域增长来表示3D矩阵。这个代码可以修改或者有人知道吗?谢谢
2009年9月23日
2009年3月30
无法下载..为什么?
2009年3月20日
这是一个很大的帮助,你想扩展你的随机种子像素彩色图像。如果你那样做,那就太好了。
2009年2月25日
谢谢,似乎是一段方便的代码。在R2008b上,我不得不将第70行更改为
dist = abs (neg_list (1: neg_pos, 3)总价值(reg_mean));
以使其与示例图像一起运行。
2009年2月20日
嗨,我发现了问题所在,我的数据集是int16格式的,所以很容易进行修改,但我不确定我的区域是否被正确分割。问候tanuj
2009年2月6日
大家好,这是一段优秀的代码。我只是一个中级matlab程序员,对这段代码有几个问题。(1) 它对普通图像有效。但我有一个dicom int16医学图像,当我把它作为输入时,我得到一个只有一个像素(我选择的种子像素)的输出图像。我稍微更改了代码,例如instad of imread,我使用dicomread,而在imshow(i,[])的地方我使用了imshow(i,'displayRange',[])。(2)文件解释为“当区域平均值和强度差时,该过程停止新像素变得比某个阈值(t)大"但这个t是0.2你在文件中定义的,如果我想使用一个灰色强度级别,比如600作为阈值,该怎么办。因为我的图像是int16 dicom,它有2^16,所以它的灰色巩膜范围从-32768到+ 32768。提前谢谢你的帮助。tanuj
2009年1月22日
2008年12月19日
好的
2008年8月1日
它很好用,很简单。其他领域需要发展
2008年7月31日
非常好,简单易读,简单易懂,一开始就很好用,对学生练习很有用
2008年5月18日
区域生长是一种非常有用的分割方法。这个项目是一个很好的开始。
2008年4月22日
它做它应该做的事。非常好!
2008年4月17日
有用的
2008年4月8日
这是一个很好的例子。我想知道你们是否可以将你们的工作扩展到彩色图形,而不仅仅是灰度图。
2008年3月26日
它是非常有用的。谢谢
启发:区域增长(2D/3D灰度)
在MATLAB Central中查找宝藏,了解社区如何帮助您!
在一个可执行文档中创建带有代码、输出和格式化文本的脚本。
了解Live Editor
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
您还可以从以下列表中选择网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家/地区网站未针对您所在地的访问进行优化。
与当地办事处联系
谁能告诉我我们如何纠正这个错误
区域增长错误(第29行)
如果(exist('y','var')==0),图,imshow(I,[]);[y,x]=getpts;y=round(y(1));x=round(x(1));终止
如何了解区域的增长情况
这个代码有相应的纸吗?
I = (im2double (imread (mdb005.pgm)));
图中,imshow(我);
x=200;y=750;
J = regiongrowing(我,x, y, 0.2);
我得到这个错误:
类型为“double”的输入参数的未定义函数“regionRowing”。
(第4行)中的错误
J = regiongrowing(我,x, y, 0.2);
asmae mama:如果您阅读代码中的示例,您必须将输入数据转换为double,
“我= im2double (imread (' medtest.png '));“
你好,我是matlab中的biginner,我有这个算法,但它不能运行;
I=(rgb2gray(imread('image.jpg'));
图中,imshow(我);
x = 205;y = 2562;
J = regiongrowing(我,x, y, 0.2);
如何避免此错误:
类型为“uint8”的输入参数的未定义函数“regionRowing”。
你好,我是新来的。我的电脑系统是MAC OS 10.10.5,NVIDIA GeForce GT 640M 512 MB。每当我运行你的代码时,它就会一直运行,我的电脑就会变慢。但没有产出。
我正在运行这个算法
考虑到这款游戏有40K以上的下载量,我认为我应该指出集群距离度量是错误的。具体来说,我认为平均值的计算是错误的。变量reg_size是在计算平均值之前更新的,它应该在计算平均值之后更新。
嗨……它简单易懂。有没有可能我们可以自动计算阈值而不是硬编码?
要解决这个问题:
区域增长错误(第69行)
dist=绝对值(负列表(1:负位置,3)-平均值);
您需要按照以下方式读取图像:
Im=double(rgb2gray(imread('title.format'));
问题是矩阵的格式,但如果你把它翻倍,它完全可以。
如何避免以下错误:
错误使用,
整数只能与同一类的整数或双精度标量组合。
区域增长错误(第69行)
dist=绝对值(负列表(1:负位置,3)-平均值);
嗨,我想把均值相近的区域提取出来作为一个单独的矩阵,然后在那个区域中计算一些值。你能告诉我如何在你的功能中实现这个吗?
我如何运行这个程序
谢谢
itz有用. .
谢谢你的解释
效果很好
帮我自动提取图像的特定区域
它工作得很好
有谁能帮忙吗?
我尝试了这个代码,我得到了以下错误:
输入参数不足。
区域增长错误(第29行)
如果(exist('y','var')==0),图,imshow(I,[]);[y,x]=getpts;y=round(y(1));x=round(x(1));
终止
如何使种子自动生长在感兴趣的地区?有人知道吗?
如何解决此问题..帮助我,…已达到最大递归限制500。请使用set(0,'RecursionLimit',N)更改限制。请
请注意,超出可用堆栈空间可能会使MATLAB和/或计算机崩溃。
当使用此代码[x,y]=getpts(图)或[y,x]=getpts(图)不起作用时,请帮助我如何计算x和y值
感谢您的出色工作,但这段代码中存在一个小错误,Matlab使用水平轴(向右)作为X方向,垂直轴(向下)作为Y方向,我们从Matlab文档中得到,[X,Y]=getpts(图),而不是您在代码中编写的[Y,X]=getpts(图),这可能会产生误导,需要我花几个小时才能弄清楚!
我在哪里可以得到这个代码的描述??
干得好,谢谢
在使用给定的示例代码和示例(第21行)时,我遇到了以下错误:
已达到最大递归限制700。请使用set(0,'RecursionLimit',N)更改限制。请注意
可用堆栈空间可能会使MATLAB和/或计算机崩溃。
ismember>IsMemberBuiltypes中出错
有人能帮我吗?
MATLAB R2014a
你好,
有人能告诉我如何运行这个代码吗?
我一直得到一个错误。(对matlab非常陌生)
是的,我可以帮你瓦西姆先生。。。
你好,
我正在做一个关于非接触式指纹检测的项目,有人能帮我编写区域增长的matlab代码吗
嗨,所有
我运行此代码,但遇到以下错误:
?输入参数“I”未定义。
==>区域划船在29时出错
如果(exist('y','var')==0),图,imshow(I,[]);[y,x]=getpts;
y =圆(y (1));x =圆(x (1));终止
有人知道我该怎么解决这个问题吗?
谢谢
相似性度量是像素的强度值与当前正在处理的区域平均值之间的差值,因此它是相对的。这种区域生长算法有名字吗?像是渐进式的还是适应性的?或者这只是一个不同的相似性度量?
我有一个灰度肺CT图像,范围在0-256之间的值:0,52,然后值> 90,我想分割。我给阈值= 75,但结果蒙版仍然包括所有的图像,而不是内部的值> 75 ..
这里怎么了?
??尝试访问neg_list(0,:);索引必须是一个正整数或逻辑数。
==>区域划船在80时出错
neg_list(指数:)= neg_list (neg_pos:);neg_pos = neg_pos-1;
干得好。
谁能告诉我如何改变区域的颜色?
优秀的算法;非常感谢。
简单的程序,易于使用的医学图像。
你好,谢谢,想要详细信息吗
???下标下标必须是实正整数或逻辑数。
==>区域划船在34时出错
reg_mean=I(x,y);%分割区域的平均值
如何解决这个问题请尽快回复
我得到一个错误:“没有足够的输入参数”请帮助我如何解决这个问题,请告诉我如何传递输入参数?
想要详细资料吗
谢谢你的功能。图像处理工具箱中的好代码。
为了避免此错误,您必须通过以下方式将图像转换为double类型:
I=2倍(I);(一是形象)
??? 使用==>减号时出错
不支持操作数类。金宝app
==>区域划船在69时出错
dist=绝对值(负列表(1:负位置,3)-平均值);
这个问题怎么解决?
你们能分享正确的代码吗?
你好,
如果有人知道使用多个种子点的地区种植的例子,请分享!谢谢你!
问候,
安娜
工作得很有魅力,感谢您提供此代码。
嗨……我在执行这段代码时发现了一个错误。错误细节如下:
错误使用,
整数只能与同一类的整数或双精度标量组合。
区域增长错误(第69行)
dist=绝对值(负列表(1:负位置,3)-平均值);
谢谢!
请回答我的问题。我已经给你发了很多邮件,这个代码不是很好,因为我只得到一个白色的图像。我需要我用种子点选择的ROI。请回复。
很好
您好…我在执行此代码时发现一个错误。错误的详细信息如下:
??? 使用==>减号时出错
整数只能与同一类的整数组合,或
标量双打。
dist=绝对值(负列表(1:负位置,3)-平均值);
谢谢!
我应该说,这对像我这样的初学者非常有帮助,但我有一个疑问,我们可以根据什么来确定reg_max distance的值
如果我们选择分割一个特定的区域
我已经尝试了图像大小512*512的代码。在提供了x和y值之后,我得到了大小相同的512*512的J,所有的白色图像。没有细分。请建议!
你能给我一些示例参数吗?
我也不能下载这个文件。谁来帮忙?
你好,
谢谢你!
我无法下载文件....帮助我! !
Thq Dirk Jan Kroon为如此短的代码。我正在处理dicom图像。我将其转换为JPG。我在运行时遇到问题。
??? 输入的未定义函数或方法“RegionRowing”
double类型的参数。
我甚至定义了im2double()fnc,但我得到了一个错误。。。
你好,
我如何使它工作的3D图像?
谢谢你!
什么是x和y,我相信图像(x,y)坐标,但当我测试其他x,y值(例如,x=308,y=244, I(x,y)=0.73),然后分割的结果图像是不理想的。
谢谢你!
非常有用,谢谢!
很有帮助!谢谢你!very much!!!
我已经下载了这段o代码,但当我试图在同一个图像上运行时,即medtest.png,我得到了以下错误。你能告诉我哪里出了问题,怎么解决吗
> > regiongrowing
??? 已达到最大递归限制500。使用集合(0,'RecursionLimit',N)
改变限制。请注意,超出可用堆栈空间可能会导致
使MATLAB和/或你的计算机崩溃。
==>isstruct在99时出错
塔克斯
我将reg_maxdist改为10,没有问题。
有人知道如何将区域增长用于3D矩阵吗?
谢谢你!
我从一个3D数据矩阵“Y”得到一个核磁共振成像结果,所以它是Y(:,:, 14)。
这个算法在这个政变上不起作用。在结果中,我只有一个白色像素(种子点)。
我改变了第70行,但它没有改变任何东西。
你能帮我吗?
有人能解释一下怎样分割颈动脉吗?
这看起来很酷!但我想知道用这个程序处理更大的图像(例如卫星数据)。有什么建议吗?在我的例子中,我没有得到任何错误,但处理一个只有15 Mb的10位全色图像子集不会得到有价值的结果。
将高度赞赏任何关于matlab的工作流程的想法为这个目的!
谢谢
多谢各位!
如果像例子中那样使用im2double和imread,则不需要更改第70行(第21行-注释部分)
代码的工作方式和罗恩不同。我得换乘70号线。
但是,我没有得到16位灰度的分段/阈值输出!谢谢
如果有人能告诉我问题是什么,那就太好了!
非常有用的代码。
你好所有的,
首先我想感谢Dirk的工作和所有的matlab社区,因为这对我很有帮助。
我需要用区域增长来表示3D矩阵。
这个代码可以修改或者有人知道吗?
谢谢
无法下载..为什么?
这是一个很大的帮助,你想扩展你的随机种子像素彩色图像。如果你那样做,那就太好了。
谢谢,似乎是一段方便的代码。
在R2008b上,我不得不将第70行更改为
dist = abs (neg_list (1: neg_pos, 3)总价值(reg_mean));
以使其与示例图像一起运行。
嗨,我发现了问题所在,我的数据集是int16格式的,所以很容易进行修改,但我不确定我的区域是否被正确分割。问候tanuj
大家好,这是一段优秀的代码。我只是一个中级matlab程序员,对这段代码有几个问题。
(1) 它对普通图像有效。但我有一个dicom int16医学图像,当我把它作为输入时,我得到一个只有一个像素(我选择的种子像素)的输出图像。我稍微更改了代码,例如instad of imread,我使用dicomread,而在imshow(i,[])的地方我使用了imshow(i,'displayRange',[])。
(2)文件解释为“当区域平均值和强度差时,该过程停止
新像素变得比某个阈值(t)大"但这个t是0.2你在文件中定义的,如果我想使用一个灰色强度级别,比如600作为阈值,该怎么办。因为我的图像是int16 dicom,它有2^16,所以它的灰色巩膜范围从-32768到+ 32768。
提前谢谢你的帮助。
tanuj
好的
它很好用,很简单。其他领域需要发展
非常好,简单易读,简单易懂,一开始就很好用,对学生练习很有用
区域生长是一种非常有用的分割方法。这个项目是一个很好的开始。
它做它应该做的事。非常好!
有用的
这是一个很好的例子。我想知道你们是否可以将你们的工作扩展到彩色图形,而不仅仅是灰度图。
它是非常有用的。谢谢