|
Packit |
78deda |
#! /bin/bash
|
|
Packit |
78deda |
# This script tests: pamslice pamdeinterlace
|
|
Packit |
78deda |
# Also requires: pamcut pamtopnm pamflip
|
|
Packit |
78deda |
|
|
Packit |
78deda |
|
|
Packit |
78deda |
# Test 1.
|
|
Packit |
78deda |
# Slice rows, one by one, out of testgrid.pbm.
|
|
Packit |
78deda |
# Add header and reconstruct pbm image.
|
|
Packit |
78deda |
# Note that in pamslice output 0 is white and 1 is black: opposite of PBM
|
|
Packit |
78deda |
# Should print 2425386270 41
|
|
Packit |
78deda |
|
|
Packit |
78deda |
(echo "P1"
|
|
Packit |
78deda |
echo "14 16"
|
|
Packit |
78deda |
seq 0 15 | while read i;
|
|
Packit |
78deda |
do
|
|
Packit |
78deda |
pamslice -row=$i testgrid.pbm
|
|
Packit |
78deda |
done | awk '{print $2}' | sed 'y/01/10/' ) \
|
|
Packit |
78deda |
| pamtopnm | cksum
|
|
Packit |
78deda |
|
|
Packit |
78deda |
# Test 2.
|
|
Packit |
78deda |
# Slice rows, one by one, out of ppm test image
|
|
Packit |
78deda |
# We take a part out of testimg.ppm with pamcut for processing the
|
|
Packit |
78deda |
# whole image takes much time.
|
|
Packit |
78deda |
# Add header and reconstruct ppm image.
|
|
Packit |
78deda |
# Should print 914327477 4864
|
|
Packit |
78deda |
|
|
Packit |
78deda |
tmpdir=${tmpdir:-/tmp}
|
|
Packit |
78deda |
|
|
Packit |
78deda |
test4933_ppm=${tmpdir}/test4933.ppm
|
|
Packit |
78deda |
|
|
Packit |
78deda |
pamcut 50 50 49 33 testimg.ppm > ${test4933_ppm}
|
|
Packit |
78deda |
|
|
Packit |
78deda |
(echo "P3"
|
|
Packit |
78deda |
echo "49 33"
|
|
Packit |
78deda |
echo "255"
|
|
Packit |
78deda |
seq 0 32 | while read i;
|
|
Packit |
78deda |
do
|
|
Packit |
78deda |
pamslice -row=$i ${test4933_ppm}
|
|
Packit |
78deda |
done | awk '{print $2, $3, $4}' ) \
|
|
Packit |
78deda |
| pamtopnm | cksum
|
|
Packit |
78deda |
|
|
Packit |
78deda |
# Same as above test 2, but take cols instead of rows.
|
|
Packit |
78deda |
# Should print 914327477 4864
|
|
Packit |
78deda |
|
|
Packit |
78deda |
(echo "P3"
|
|
Packit |
78deda |
echo "33 49"
|
|
Packit |
78deda |
echo "255"
|
|
Packit |
78deda |
seq 0 48 | while read i;
|
|
Packit |
78deda |
do
|
|
Packit |
78deda |
pamslice -col=$i ${test4933_ppm}
|
|
Packit |
78deda |
done | awk '{print $2, $3, $4}' ) \
|
|
Packit |
78deda |
| pamflip -xy | cksum
|
|
Packit |
78deda |
|
|
Packit |
78deda |
# Test 4.
|
|
Packit |
78deda |
# Divide input image into two with pamdeinterlace and recombine.
|
|
Packit |
78deda |
|
|
Packit |
78deda |
testeven_ppm=${tmpdir}/testeven.ppm
|
|
Packit |
78deda |
testodd_ppm=${tmpdir}/testodd.ppm
|
|
Packit |
78deda |
|
|
Packit |
78deda |
pamdeinterlace -takeodd ${test4933_ppm} > ${testodd_ppm}
|
|
Packit |
78deda |
pamdeinterlace -takeeven ${test4933_ppm} > ${testeven_ppm}
|
|
Packit |
78deda |
|
|
Packit |
78deda |
(echo "P3"
|
|
Packit |
78deda |
echo "49 33"
|
|
Packit |
78deda |
echo "255"
|
|
Packit |
78deda |
( seq 0 15 | while read i;
|
|
Packit |
78deda |
do
|
|
Packit |
78deda |
pamslice -row=$i ${testeven_ppm}
|
|
Packit |
78deda |
pamslice -row=$i ${testodd_ppm}
|
|
Packit |
78deda |
done
|
|
Packit |
78deda |
pamslice -row=16 ${testeven_ppm};
|
|
Packit |
78deda |
) | awk '{print $2, $3, $4}' ) \
|
|
Packit |
78deda |
| pamtopnm | cksum
|
|
Packit |
78deda |
|
|
Packit |
78deda |
rm ${test4933_ppm} ${testodd_ppm} ${testeven_ppm}
|