From 747804672f93ae41846e03ba4ffeec7705fab3d3 Mon Sep 17 00:00:00 2001 From: Daniel Date: Tue, 9 Nov 2010 20:31:25 -0800 Subject: [PATCH] fix --- convert_vlsift_to_lowesift.pl | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/convert_vlsift_to_lowesift.pl b/convert_vlsift_to_lowesift.pl index 226ea747..ea07b5dd 100644 --- a/convert_vlsift_to_lowesift.pl +++ b/convert_vlsift_to_lowesift.pl @@ -1,12 +1,15 @@ #!/usr/local/bin/perl -$filename_src = $ARGV[0]; -$filename_dest = $ARGV[1]; +$filename_base = $ARGV[0]; -open (DEST, ">$filename_src"); -open (SRC, "$filename_dest"); +$filename_src = $filename_base.".key.sift"; +$filename_dest = $filename_base.".key"; +$filename_image = $filename_base.".jpg"; -$resolution_line = `jhead $filename.jpg | grep "Resolution"`; +open (DEST, ">$filename_dest"); +open (SRC, "$filename_src"); + +$resolution_line = `jhead $filename_image | grep "Resolution"`; ($res_x, $res_y) = $resolution_line =~ /: ([0-9]*) x ([0-9]*)/; $linecount = 0; @@ -17,18 +20,32 @@ seek(SRC, 0, 0); print DEST $linecount; print DEST " 128\n"; -printf ("found %d features in %s.jpg\n\n", $linecount, $filename); +printf ("found %d features in %s\n", $linecount, $filename_image); while ($record = ) { @parts = split(/ /, $record); $counter = 0; - $parts[0] = $res_x-$parts[0]; + $parts[1] = $res_y-$parts[1]; + print DEST shift(@parts)." ".shift(@parts)." ".shift(@parts)." ".shift(@parts); + + for ($count = 0; $count < 128; $count += 8) { + @tmp = @parts[$count+7]; + @parts[$count+7] = @parts[$count+1]; + @parts[$count+1] = @tmp; + + @tmp = @parts[$count+6]; + @parts[$count+6] = @parts[$count+2]; + @parts[$count+2] = @tmp; + + @tmp = @parts[$count+3]; + @parts[$count+3] = @parts[$count+5]; + @parts[$count+5] = @tmp; + } foreach (@parts) { - - if((($counter-4) % 20) == 0) { + if((($counter) % 20) == 0) { print DEST "\n "; } else { if($counter != 0){