通过选择两个或更多图像的最低强度的像素来创建新图像

时间:2018-05-06 14:15:21

标签: dm-script

两个或多个图像具有相同的图像尺寸,例如512X512像素 我想创建一个新图像,从这些图像中选择最低强度的像素,例如,新图像从图像1获得像素(1,1),从图像2获得像素(1,2),像素(512,512)从图像3开始,因为这些像素的强度在所有打开图像的比较中是最低的。有下面的简单代码吗?非常感谢你的帮助!

我的尝试:

image img1, img2, img3, newimg
img1=getfrontimage()
hideimage(img1)
img2=getfrontimage()
hideimage(img2)
img3=getfrontimage()
showimage(img1)
showimage(img2)
newimag:=min(img1,img2,img3)
showimage(newimg)

1 个答案:

答案 0 :(得分:0)

你已经非常接近你的解决方案了。您正在寻找的命令称为minimum。它从arbirtray表达式列表中给出(相应的)最小值。您还可以使用标量值作为参数:

image img1 := realImage("1",4,100,100)
image img2 := realImage("2",4,100,180)
image img3 := realImage("3",4,100,100)
img1 = icol
img2 = irow
img3 = iradius

image img4 := minimum(img1,img2,img3,30)
img4.ShowImage()

minimum()命令就是您的示例所需要的,但请记住,您始终可以“建立”#34;无论你需要什么,还有一系列的tert()命令。 F.E.以下内容完全相同:

image img4 =  img1
img4 = img2 < img4 ? img2 : img4
img4 = img3 < img4 ? img3 : img4
img4 = 30 < img4 ? 30 : img4