***Timing Photo Image Loading under Pixane Example *** This page is under development. Comments are welcome, but please load any comments in the comments section at the middle of the page. Thanks,[gold] ---- [gold] Here is an eTCL script to estimate timing photo image loading under [pixane]. This script was largely derived from posting of [Eric Hassold] on [The comp.lang.tcl newsgroup] The timing statements were pulled from the program below after the timing info was calculated. The impetus for the script was an [ask9] question about time of "loading single image ...". My solution to a different application on Unix some grey hairs ago was creating batch thumbnails with [ImageMagick], before loading the application script. If one can work with thumbnails, a tcl or perl script can use [ImageMagick] to thumbnail every image in a directory or tailor to specific megabyte size. Since now, I'm using etcl and [pixane] on an Acer Aspire pc notepad, it might be desirable to establish some peg points or timing results with the [pixane] image library. The timing results with [pixane] are similar to those reported for [ImageMagick] on a Pentium, [Fast image resizing] ---- In planning any software, there is a need to develop testcases. Testcase 1. Output of timing statements. %|quantity|number|units|% &|photo size of bird.jpg| 1.6| m |& &| loading| 1595970 |microseconds per iteration|& &|Scaling |(1944 x 2592) => (180 x 240)|pixels|& &| resizex| 68 |microseconds per iteration|& &|blanking| 4283| microseconds per iteration|& &| rescale| 230934 |microseconds per iteration|& &| saving| 14458 |microseconds per iteration|& &| proc time |1863222| microseconds per iteration|& ---- ***Screenshots Section*** [http://img854.imageshack.us/img854/7704/image33.gif] ---- '''Comments Section''' Please place any comments here, Thanks. ---- ***References:*** * http://www.neatware.com/myrmecox/studio/ex_tclmagick.html, * http://members.shaw.ca/el_supremo/TclWand_053.zip, * http://commons.wikimedia.org/wiki/File:Cyanocitta-cristata-004.jpg * http://www.tcl.tk/man/tcl8.5/TclCmd/time.htm * http://www.evolane.com/software/pixane/pixane.html * [pixane] : a graphical library to read, write and transform images from Tcl * Especially look at [Fast image resizing] ---- ****Appendix TCL programs and scripts **** **** Pretty Print Version*** ====== # Pretty print version from autoindent # and ased editor # program of image load under pixane # written on Windowws XP on eTCL # working under TCL version 8.5.6 and eTCL 1.0.1 # gold on TCL WIKI , 25may2011 package require Tk package require pixane console show global targetpix photox proc jackpix {} { global targetpix photox set fin [file join [file dirname [info script]] bird6.jpg] set fout [file rootname $fin]_new[file extension $fin] set p [pixane create] pixane load $p -file $fin set w [pixane width $p] set h [pixane height $p] set maximumwidth 240 set maximumheight 240 set ratiopicture 1 if {$ratiopicture} { set sourcewidth [pixane width $p] set sourceheight [pixane height $p] if {$maximumwidth*$sourceheight<$maximumheight*$sourcewidth} { set virtualwidth $maximumwidth set virtualheight [expr {($sourceheight*$maximumwidth)/$sourcewidth}] } else { set virtualwidth [expr {($sourcewidth*$maximumheight)/$sourceheight}] set virtualheight $maximumheight } } else { set virtualwidth $maximumwidth set virtualheight $maximumheight } set targetpix [pixane create] pixane resize $targetpix $virtualwidth $virtualheight pixane blank $targetpix pixane scale $targetpix $p pixane save $targetpix -file $fout -format jpg set photox [pixane create] } jackpix set tkpicturex [pixcopy $targetpix] pack [button .pixanes -image $tkpicturex -bd 30 -bg tan] -fill both -expand true wm title . "Timing Photo Image Loading under Pixane " tkwait window . exit ====== *** Code scraps, timing statements*** ====== puts " loading [time {pixane load $p -file $fin} ]" puts "Scaling ($sourcewidth x $sourceheight) => ($virtualwidth x $virtualheight)" puts " resizex [time {pixane resize $targetpix $virtualwidth $virtualheight } ]" puts " blanking [time {pixane blank $targetpix } ]" puts " rescale [time {pixane scale $targetpix $p } ]" puts " saving [time {pixane save $targetpix -file $fout -format jpg } ]" puts " proc time [time { jackpix } ]" ====== <> Testing | Toys | Performance | Image Processing |Graphics| Example | Mathematics