43 lines
847 B
Fortran
43 lines
847 B
Fortran
program BasicImageTests
|
|
use RCImageBasic
|
|
use RCImageIO
|
|
use RCImageProcess
|
|
|
|
implicit none
|
|
|
|
type(rgbimage) :: animage
|
|
type(scimage) :: gray
|
|
integer, dimension(0:255) :: histo
|
|
integer :: ml
|
|
|
|
open(unit=10, file='lenna.ppm', action='read', status='old')
|
|
call read_ppm(10, animage)
|
|
close(10)
|
|
|
|
call init_img(gray)
|
|
! or
|
|
! call alloc_img(gray, animage%width, animage%height)
|
|
|
|
gray = animage
|
|
|
|
call get_histogram(gray, histo)
|
|
ml = histogram_median(histo)
|
|
where ( gray%channel >= ml )
|
|
animage%red = 255
|
|
animage%green = 255
|
|
animage%blue = 255
|
|
elsewhere
|
|
animage%red = 0
|
|
animage%green = 0
|
|
animage%blue = 0
|
|
end where
|
|
|
|
open(unit=10, file='elaborated.ppm', action='write')
|
|
call output_ppm(10, animage)
|
|
close(10)
|
|
|
|
call free_img(animage)
|
|
call free_img(gray)
|
|
|
|
end program BasicImageTests
|