最佳答案
如果图像是标签“A”,那么您可以简单地执行以下操作:
总和( A[] )
或者更详细一点:
image img := GetFrontImage()
number integral = sum( img[] )
result("\n The intensity of the selected region in image [")
result( img.imageGetLabel() + "]:" + img.ImageGetName() + " is: ")
result( integral)
请注意,这将为您提供原始数字 中的积分(或只是 channel 值的总和)。如果您已校准强度,则必须考虑校准。 如果——在大多数情况下——你只有一个强度标度但没有偏移量,那就很简单了:
image img := GetFrontImage()
number integral = sum( img[] )
number scale = img.ImageGetIntensityScale()
number integral_cal = integral * scale
result("\n The intensity of the selected region in image [")
result( img.imageGetLabel() + "]:" + img.ImageGetName() + " is: ")
result( integral_cal )
如果你也有一个起源,它变成:
image img := GetFrontImage()
number integral = sum( img[] )
number scale = img.ImageGetIntensityScale()
number origin = img.ImageGetIntensityOrigin()
number t,l,b,r
img.GetSelection(t,l,b,r)
number nChannels = r - l
number integral_cal = (integral - origin * nChannels) * scale
result("\n The intensity of the selected region in image [")
result( img.imageGetLabel() + "]:" + img.ImageGetName() + " is: ")
result( integral_cal )
关于dm-script - 用于计算具有给定 ROI 的曲线下面积的 DM 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69743188/