Algorithm 查找水滴的最大宽度
我试图通过计算我编写代码的blob中每行的白色像素数来找到blob的最大宽度,但是,它从未停止过。如何修复它Algorithm 查找水滴的最大宽度,algorithm,image-processing,vb6,Algorithm,Image Processing,Vb6,我试图通过计算我编写代码的blob中每行的白色像素数来找到blob的最大宽度,但是,它从未停止过。如何修复它 For y = 0 To bmp.ScaleHeight - 1 sum = 0 For x = 0 To bmp.ScaleWidth - 1 pixel1 = bmp.Point(x, y) If pixel1 = vbWhite Then sum = sum + 1 If bmp.Poi
For y = 0 To bmp.ScaleHeight - 1
sum = 0
For x = 0 To bmp.ScaleWidth - 1
pixel1 = bmp.Point(x, y)
If pixel1 = vbWhite Then
sum = sum + 1
If bmp.Point(x + 1, y) = vbBlack Then
If sum > max Then
Lmax = sum
y1 = y
x2 = x
x1 = x2 - sum
End If
End If
End If
Next x
Next y
你确定它永远不会停止吗?还是你只是厌倦了等待它停止?循环应该终止,尽管它在大图像上可能会非常慢。我同意,x&y变量不会被更改,除非是for循环,所以它将在某一点结束。为x和y变量放置一些Debug.Print语句,这样您就可以了解代码的进展情况,以及应该等待多长时间。我不同意。即使对于1000x1000个图像,循环也应在几分之一秒内终止。图像的宽度和/或高度不是偶然的0吗?这会导致长时间运行。缩放高度是以像素为单位的吗?如果它在twips中,可能会使结果变得有点无意义。你在调试器中已经完成了吗?根据我的经验,这一点非常缓慢。