Percentage difference between images: Difference between revisions

fortran
(Added Vedit macro language)
(fortran)
Line 134:
: .bdiff ( bmp1 bmp2 -- )
cr bdiff 100e f* f. ." percent different" ;
 
=={{header|Fortran}}==
 
<lang fortran>program ImageDifference
 
use RCImageBasic
use RCImageIO
 
implicit none
 
integer, parameter :: input1_u = 20, &
input2_u = 21
 
type(rgbimage) :: lenna1, lenna2
real :: totaldiff
 
 
open(input1_u, file="Lenna100.ppm", action="read")
open(input2_u, file="Lenna50.ppm", action="read")
call read_ppm(input1_u, lenna1)
call read_ppm(input2_u, lenna2)
close(input1_u)
close(input2_u)
 
totaldiff = sum( (abs(lenna1%red - lenna2%red) + &
abs(lenna1%green - lenna2%green) + &
abs(lenna1%blue - lenna2%blue)) / 255.0 )
 
 
print *, 100.0 * totaldiff / (lenna1%width * lenna1%height * 3.0)
 
call free_img(lenna1)
call free_img(lenna2)
 
end program ImageDifference</lang>
 
This gives 1.6555154.
 
=={{header|MAXScript}}==
<lang maxscript>fn diffImages =
<pre>
fn diffImages =
(
local img1 = selectBitmap caption:"Select Image 1"
Line 155 ⟶ 191:
)
format "Diff: %\%\n" (totalDiff / ((img1.width * img1.height * 3) as float) * 100)
)</lang>
)
</pre>
 
=={{header|OCaml}}==