Blame test/pamslice-roundtrip.test

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}