Ajout entrée image générique avec CImg

This commit is contained in:
Unknown 2018-07-27 18:20:13 +02:00
parent 1bc7621bf7
commit 3e071ff416
90 changed files with 69224 additions and 31887 deletions

View file

@ -14,70 +14,46 @@ ASIFT_matcher::ASIFT_matcher(): _nb_refs(0), _total_num_matchings(0), _resize_im
bool ASIFT_matcher::addReference(const char* image_path, unsigned int num_tilts)
{
///// Read input
float * iarr1;
size_t w1, h1;
if (NULL == (iarr1 = read_png_f32_gray(image_path, &w1, &h1))) {
std::cerr << "Unable to load image file " << image_path << std::endl;
return false;
}
std::vector<float> ipixels1(iarr1, iarr1 + w1 * h1);
free(iarr1); /*memcheck*/
// float * iarr1;
// size_t w1, h1;
// if (NULL == (iarr1 = read_png_f32_gray(image_path, &w1, &h1))) {
// std::cerr << "Unable to load image file " << image_path << std::endl;
// return false;
// }
// std::vector<float> ipixels1(iarr1, iarr1 + w1 * h1);
// free(iarr1); /*memcheck*/
// cout<<"Size : "<<w1<<"/"<<h1<<" - "<<ipixels1.size()<<endl;
// Mat imageMat;
// imageMat = imread(image_path); // Read the file
cimg_library::CImg<float> image;
try
{
image.assign(image_path);
}
catch(cimg_library::CImgIOException)
{
std::cerr << "Unable to load image file " << image_path << std::endl;
return false;
}
//Convert to grayscale
cimg_library::CImg<float> gray(image.width(), image.height(), 1, 1, 0);
cimg_forXY(image,x,y) {
// Separation of channels
int R = (int)image(x,y,0,0);
int G = (int)image(x,y,0,1);
int B = (int)image(x,y,0,2);
// Arithmetic addition of channels for gray
// int grayValue = (int)(0.33*R + 0.33*G + 0.33*B);
// Real weighted addition of channels for gray
int grayValueWeight = (int)(0.299*R + 0.587*G + 0.114*B);
// saving píxel values into image information
// gray(x,y,0,0) = grayValue;
gray(x,y,0,0) = grayValueWeight;
}
// if(! imageMat.data ) // Check for invalid input
// {
// cout << "Could not open or find " << image_path << std::endl;
// return -1;
// }
// vector<float> ipixels1;
// size_t w1=0, h1=0;
// if(imageMat.isContinuous())
// {
// Mat M1;
// cvtColor(imageMat,M1,COLOR_BGR2GRAY);
// // M1.convertTo(M1,CV_32FC1);
// //Conversion for ASIFT
// if (M1.isContinuous())
// {
// ipixels1.assign((float*)M1.datastart, (float*)M1.dataend);
// }
// else {
// for (int i = 0; i < M1.rows; ++i)
// {
// ipixels1.insert(ipixels1.end(), (float*)M1.ptr<uchar>(i), (float*)M1.ptr<uchar>(i)+M1.cols);
// }
// }
// // ipixels1.assign((float*)M1.datastart, (float*)M1.dataend);
// // ipixels1.assign(imageMat.begin<float>(), imageMat.end<float>());
// w1=M1.cols;
// h1=M1.rows;
// cout<<"Size : "<<w1<<"/"<<h1<<" - "<<ipixels1.size()<<endl;
// Mat M2=Mat(h1,w1,CV_32FC1);
// memcpy(M2.data,ipixels1.data(),ipixels1.size()*sizeof(float));
// namedWindow( "Display window", WINDOW_AUTOSIZE );// Create a window for display.
// imshow( "Display window", M2 ); // Show our image inside it.
// float *opixelsASIFT = new float[w1*h1];
// /////////////////////////////////////////////////////////////////// Copy image to output
// for(int j = 0; j < (int) h1; j++)
// for(int i = 0; i < (int) w1; i++) opixelsASIFT[j*w1+i] = ipixels1[j*w1+i];
// ///////////////////////////////////////////////////////////////// Save imgOut
// write_png_f32("img.png", opixelsASIFT, w1, h1, 1);
// delete[] opixelsASIFT; /*memcheck*/
// waitKey(0);
// }
vector<float> ipixels1;
size_t w1=gray.width(), h1=gray.height();
ipixels1.assign(gray.begin(), gray.end());
///// Resize the images to area wS*hW in remaining the apsect-ratio
///// Resize if the resize flag is not set or if the flag is set unequal to 0
@ -193,14 +169,43 @@ unsigned int ASIFT_matcher::match(const char* image_path, unsigned int num_tilts
}
///// Read input
float * iarr1;
size_t w1, h1;
if (NULL == (iarr1 = read_png_f32_gray(image_path, &w1, &h1))) {
std::cerr << "Unable to load image file " << image_path << std::endl;
return 1;
}
std::vector<float> ipixels1(iarr1, iarr1 + w1 * h1);
free(iarr1); /*memcheck*/
// float * iarr1;
// size_t w1, h1;
// if (NULL == (iarr1 = read_png_f32_gray(image_path, &w1, &h1))) {
// std::cerr << "Unable to load image file " << image_path << std::endl;
// return 1;
// }
// std::vector<float> ipixels1(iarr1, iarr1 + w1 * h1);
// free(iarr1); /*memcheck*/
cimg_library::CImg<float> image;
try
{
image.assign(image_path);
}
catch(cimg_library::CImgIOException)
{
std::cerr << "Unable to load image file " << image_path << std::endl;
return 0;
}
//Convert to grayscale
cimg_library::CImg<float> gray(image.width(), image.height(), 1, 1, 0);
cimg_forXY(image,x,y) {
// Separation of channels
int R = (int)image(x,y,0,0);
int G = (int)image(x,y,0,1);
int B = (int)image(x,y,0,2);
// Arithmetic addition of channels for gray
// int grayValue = (int)(0.33*R + 0.33*G + 0.33*B);
// Real weighted addition of channels for gray
int grayValueWeight = (int)(0.299*R + 0.587*G + 0.114*B);
// saving píxel values into image information
// gray(x,y,0,0) = grayValue;
gray(x,y,0,0) = grayValueWeight;
}
vector<float> ipixels1;
size_t w1=gray.width(), h1=gray.height();
ipixels1.assign(gray.begin(), gray.end());
///// Resize the images to area wS*hW in remaining the apsect-ratio
///// Resize if the resize flag is not set or if the flag is set unequal to 0
@ -530,14 +535,14 @@ bool ASIFT_matcher::saveReferences(const char* ref_path) const
std::ofstream file_key1(ref_path);
if (file_key1.is_open())
{
file_key1<<_nb_refs<<std::endl;
file_key1<<_nb_refs<<" "<<std::endl;
for(unsigned int i=0; i<_keys.size();i++)
{
asift_keypoints kps =_keys[i];
// Follow the same convention of David Lowe:
// the first line contains the number of keypoints and the length of the desciptors (128)
// Added number of tilts
file_key1 << _num_keys[i] << " " << VecLength << " " << _num_tilts[i] << " " << std::endl;
file_key1 << _num_keys[i] << " " << VecLength << " " <<std::endl; //<< _num_tilts[i] << " " << std::endl;
for (int tt = 0; tt < (int) kps.size(); tt++)
{
for (int rr = 0; rr < (int) kps[tt].size(); rr++)
@ -573,15 +578,68 @@ bool ASIFT_matcher::saveReferences(const char* ref_path) const
bool ASIFT_matcher::loadReferences(const char* ref_path)
{
std::ifstream ref_file(ref_path);
std::string nb_ref;
std::string line, tmp;
std::stringstream iss;
if (ref_file.is_open())
{
std::getline(ref_file, nb_ref);
//std::stoi(nb_ref, _nb_refs); //C++11
_nb_refs = atoi(nb_ref.c_str());
for(unsigned int i=0; i<_nb_refs;i++)
std::getline(ref_file, line);
std::string::size_type sz;
_nb_refs = std::stoi(line, &sz); //C++11
// _nb_refs = atoi(line.c_str());
_keys = std::vector<asift_keypoints>(_nb_refs);
_num_keys = std::vector< int >(_nb_refs);
_num_tilts = std::vector< int >(_nb_refs,1);
_zoom_refs = std::vector<float>(_nb_refs,1);
for(unsigned int i = 0; i<_nb_refs;i++)
{
std::getline(ref_file, line);
std::stringstream iss(line);
std::getline(iss,tmp,' ');
_num_keys[i]=atoi(tmp.c_str());
std::getline(iss,tmp,' ');
if(VecLength!=atoi(tmp.c_str()))
{
std::cout<<"Error VecLength doesn't correspond..."<<std::endl;
return false;
}
// std::getline(iss,tmp,' ');
// _num_tilts[i]=atoi(tmp.c_str());
keypointslist list;
for(unsigned int j =0; j<(unsigned int)_num_keys[j];j++)
{
keypoint nkp;
std::getline(ref_file, line);
std::stringstream iss(line);
std::getline(iss,tmp,' ');
// std::stof(nb_ref, nkp.x); //C++11
nkp.x=atof(tmp.c_str());
std::getline(iss,tmp,' ');
nkp.y=atof(tmp.c_str());
std::getline(iss,tmp,' ');
nkp.scale=atof(tmp.c_str());
std::getline(iss,tmp,' ');
nkp.angle=atof(tmp.c_str());
for(unsigned int k=0; k<(int) VecLength; k++)
{
std::getline(iss,tmp,' ');
nkp.vec[k]=atof(tmp.c_str());
}
list.push_back(nkp);
}
std::vector< keypointslist > vkps(1,list);
asift_keypoints akps(1,vkps);
_keys[i]=akps;
}
}
else

View file

@ -3,14 +3,14 @@
#include <string.h>
#include <time.h>
#include <vector>
using namespace std;
#include <sstream>
#ifdef _OPENMP
#include <omp.h>
#endif
#include "demo_lib_sift.h"
#include "io_png/io_png.h"
// #include "io_png/io_png.h"
#include "library.h"
#include "frot.h"
@ -18,21 +18,12 @@ using namespace std;
#include "compute_asift_keypoints.h"
#include "compute_asift_matches.h"
// #include <opencv2/core/core.hpp>
// #include <opencv2/highgui/highgui.hpp>
// #include <opencv2/imgproc/imgproc.hpp>
// using namespace cv;
#include "CImg.h" //Need ImageMagick package
# define IM_X 800
# define IM_Y 600
// struct image
// {
// vector<float> img;
// int width;
// int height;
// } image;
using namespace std;
typedef vector< vector< keypointslist > > asift_keypoints;
@ -91,4 +82,4 @@ protected:
//Flags
bool _resize_imgs;// = false; //Resize images to IM_X/IM_Y ?
bool _showDebug;// = 0; //Show debugging messages ?
};
};

File diff suppressed because it is too large Load diff

View file

@ -7,7 +7,7 @@ C_FLAGS = -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src
C_DEFINES =
CXX_FLAGS = -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O3 -ftree-vectorize -funroll-loops -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/. -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png/libs/png -I/usr/include/opencv
CXX_FLAGS = -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O2 -ftree-vectorize -funroll-loops -L/usr/X11R6/lib -lm -lpthread -lX11 -std=c++11 -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/. -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png/libs/png -I/usr/include/opencv
CXX_DEFINES =

View file

@ -1 +1 @@
/usr/bin/c++ -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O3 -ftree-vectorize -funroll-loops CMakeFiles/demo_ASIFT.dir/demo_ASIFT.cpp.o CMakeFiles/demo_ASIFT.dir/numerics1.cpp.o CMakeFiles/demo_ASIFT.dir/frot.cpp.o CMakeFiles/demo_ASIFT.dir/splines.cpp.o CMakeFiles/demo_ASIFT.dir/fproj.cpp.o CMakeFiles/demo_ASIFT.dir/library.cpp.o CMakeFiles/demo_ASIFT.dir/flimage.cpp.o CMakeFiles/demo_ASIFT.dir/filter.cpp.o CMakeFiles/demo_ASIFT.dir/demo_lib_sift.cpp.o CMakeFiles/demo_ASIFT.dir/compute_asift_keypoints.cpp.o CMakeFiles/demo_ASIFT.dir/compute_asift_matches.cpp.o CMakeFiles/demo_ASIFT.dir/orsa.cpp.o CMakeFiles/demo_ASIFT.dir/io_png/io_png.c.o -o demo_ASIFT -rdynamic io_png/libs/png/libpng.a io_png/libs/zlib/libzlib.a libMatch/libMatch.a libNumerics/libNumerics.a
/usr/bin/c++ -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O2 -ftree-vectorize -funroll-loops -L/usr/X11R6/lib -lm -lpthread -lX11 -std=c++11 CMakeFiles/demo_ASIFT.dir/demo_ASIFT.cpp.o CMakeFiles/demo_ASIFT.dir/numerics1.cpp.o CMakeFiles/demo_ASIFT.dir/frot.cpp.o CMakeFiles/demo_ASIFT.dir/splines.cpp.o CMakeFiles/demo_ASIFT.dir/fproj.cpp.o CMakeFiles/demo_ASIFT.dir/library.cpp.o CMakeFiles/demo_ASIFT.dir/flimage.cpp.o CMakeFiles/demo_ASIFT.dir/filter.cpp.o CMakeFiles/demo_ASIFT.dir/demo_lib_sift.cpp.o CMakeFiles/demo_ASIFT.dir/compute_asift_keypoints.cpp.o CMakeFiles/demo_ASIFT.dir/compute_asift_matches.cpp.o CMakeFiles/demo_ASIFT.dir/orsa.cpp.o CMakeFiles/demo_ASIFT.dir/io_png/io_png.c.o -o demo_ASIFT -rdynamic io_png/libs/png/libpng.a io_png/libs/zlib/libzlib.a libMatch/libMatch.a libNumerics/libNumerics.a

View file

@ -6,9 +6,65 @@
#IncludeRegexTransform:
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ASIFT_matcher.cpp
ASIFT_matcher.hpp
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ASIFT_matcher.hpp
./io_png/libs/png/png.h
../zlib/zlib.h
./io_png/libs/zlib/zlib.h
pngconf.h
./io_png/libs/png/pngconf.h
crtdbg.h
-
./io_png/libs/png/pngconf.h
pngusr.h
./io_png/libs/png/pngusr.h
config.h
./io_png/libs/png/config.h
windows.h
-
stdio.h
-
stdio.h
-
sys/types.h
-
setjmp.h
-
strings.h
-
string.h
-
stdlib.h
-
fp.h
-
math.h
-
m68881.h
-
mem.h
-
alloc.h
-
malloc.h
-
time.h
-
dos.h
-
./io_png/libs/zlib/zconf.h
windows.h
-
sys/types.h
-
unistd.h
-
unixio.h
-
./io_png/libs/zlib/zlib.h
zconf.h
./io_png/libs/zlib/zconf.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ASIFT_matcher.hpp
stdio.h
@ -21,12 +77,12 @@ time.h
-
vector
-
sstream
-
omp.h
-
demo_lib_sift.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/demo_lib_sift.h
io_png/io_png.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/io_png/io_png.h
library.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/library.h
frot.h
@ -37,6 +93,120 @@ compute_asift_keypoints.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_keypoints.h
compute_asift_matches.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_matches.h
CImg.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/CImg.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/CImg.h
cstdio
-
cstdlib
-
cstdarg
-
cstring
-
cmath
-
cfloat
-
climits
-
ctime
-
exception
-
algorithm
-
stdio.h
-
sys/types.h
-
sys/time.h
-
sys/stat.h
-
unistd.h
-
dirent.h
-
fnmatch.h
-
windows.h
-
shlobj.h
-
process.h
-
io.h
-
initializer_list
-
utility
-
X11/Xlib.h
-
X11/Xutil.h
-
X11/keysym.h
-
pthread.h
-
sys/ipc.h
-
sys/shm.h
-
X11/extensions/XShm.h
-
X11/extensions/Xrandr.h
-
omp.h
-
cstddef
-
cv.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/cv.h
highgui.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/highgui.h
png.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/png.h
jpeglib.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/jpeglib.h
setjmp.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/setjmp.h
tiffio.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/tiffio.h
minc_io_simple_volume.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/minc_io_simple_volume.h
minc_1_simple.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/minc_1_simple.h
minc_1_simple_rw.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/minc_1_simple_rw.h
zlib.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/zlib.h
curl/curl.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/curl/curl.h
Magick++.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/Magick++.h
fftw3.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/fftw3.h
Board.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/Board.h
ImfRgbaFile.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ImfRgbaFile.h
ImfInputFile.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ImfInputFile.h
ImfChannelList.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ImfChannelList.h
ImfMatrixAttribute.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ImfMatrixAttribute.h
ImfArray.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ImfArray.h
tinyexr.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/tinyexr.h
CImg.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/CImg.h
stdint.h
-
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_keypoints.h
library.h
@ -112,8 +282,6 @@ library.h
vector
-
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/io_png/io_png.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/library.h
stdio.h
-
@ -150,3 +318,41 @@ string.h
vector
-
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/test_ASIFT.cpp
ASIFT_matcher.hpp
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ASIFT_matcher.hpp
/usr/include/opencv/cv.h
opencv2/core/core_c.h
/usr/include/opencv/opencv2/core/core_c.h
opencv2/core/core.hpp
/usr/include/opencv/opencv2/core/core.hpp
opencv2/imgproc/imgproc_c.h
/usr/include/opencv/opencv2/imgproc/imgproc_c.h
opencv2/imgproc/imgproc.hpp
/usr/include/opencv/opencv2/imgproc/imgproc.hpp
opencv2/video/tracking.hpp
/usr/include/opencv/opencv2/video/tracking.hpp
opencv2/features2d/features2d.hpp
/usr/include/opencv/opencv2/features2d/features2d.hpp
opencv2/flann/flann.hpp
/usr/include/opencv/opencv2/flann/flann.hpp
opencv2/calib3d/calib3d.hpp
/usr/include/opencv/opencv2/calib3d/calib3d.hpp
opencv2/objdetect/objdetect.hpp
/usr/include/opencv/opencv2/objdetect/objdetect.hpp
opencv2/legacy/compat.hpp
/usr/include/opencv/opencv2/legacy/compat.hpp
opencv2/core/internal.hpp
/usr/include/opencv/opencv2/core/internal.hpp
/usr/include/opencv/highgui.h
opencv2/core/core_c.h
/usr/include/opencv/opencv2/core/core_c.h
opencv2/core/core.hpp
/usr/include/opencv/opencv2/core/core.hpp
opencv2/highgui/highgui_c.h
/usr/include/opencv/opencv2/highgui/highgui_c.h
opencv2/highgui/highgui.hpp
/usr/include/opencv/opencv2/highgui/highgui.hpp

View file

@ -410,35 +410,6 @@ test_ASIFT: io_png/libs/png/libpng.a
test_ASIFT: io_png/libs/zlib/libzlib.a
test_ASIFT: libMatch/libMatch.a
test_ASIFT: libNumerics/libNumerics.a
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_videostab.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_ts.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_superres.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_stitching.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_ocl.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_gpu.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_contrib.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.8
test_ASIFT: /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.8
test_ASIFT: CMakeFiles/test_ASIFT.dir/link.txt
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable test_ASIFT"
$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/test_ASIFT.dir/link.txt --verbose=$(VERBOSE)

View file

@ -9,8 +9,13 @@ CMakeFiles/test_ASIFT.dir/io_png/io_png.c.o
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/io_png/io_png.c
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/io_png/io_png.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o
./io_png/libs/png/png.h
./io_png/libs/png/pngconf.h
./io_png/libs/zlib/zconf.h
./io_png/libs/zlib/zlib.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ASIFT_matcher.cpp
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ASIFT_matcher.hpp
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/CImg.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_keypoints.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_matches.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/demo_lib_sift.h
@ -19,10 +24,11 @@ CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/flimage.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/fproj.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/frot.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/io_png/io_png.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/library.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/numerics1.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/splines.h
/usr/include/opencv/cv.h
/usr/include/opencv/highgui.h
CMakeFiles/test_ASIFT.dir/compute_asift_keypoints.cpp.o
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_keypoints.cpp
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_keypoints.h
@ -252,7 +258,12 @@ CMakeFiles/test_ASIFT.dir/splines.cpp.o
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/splines.cpp
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/splines.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o
./io_png/libs/png/png.h
./io_png/libs/png/pngconf.h
./io_png/libs/zlib/zconf.h
./io_png/libs/zlib/zlib.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/ASIFT_matcher.hpp
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/CImg.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_keypoints.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/compute_asift_matches.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/demo_lib_sift.h
@ -261,8 +272,9 @@ CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/flimage.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/fproj.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/frot.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/io_png/io_png.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/library.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/numerics1.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/splines.h
/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/test_ASIFT.cpp
/usr/include/opencv/cv.h
/usr/include/opencv/highgui.h

View file

@ -8,8 +8,13 @@ CMakeFiles/test_ASIFT.dir/io_png/io_png.c.o: ./io_png/libs/zlib/zlib.h
CMakeFiles/test_ASIFT.dir/io_png/io_png.c.o: io_png/io_png.c
CMakeFiles/test_ASIFT.dir/io_png/io_png.c.o: io_png/io_png.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: ./io_png/libs/png/png.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: ./io_png/libs/png/pngconf.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: ./io_png/libs/zlib/zconf.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: ./io_png/libs/zlib/zlib.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: ASIFT_matcher.cpp
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: ASIFT_matcher.hpp
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: CImg.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: compute_asift_keypoints.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: compute_asift_matches.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: demo_lib_sift.h
@ -18,10 +23,11 @@ CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: filter.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: flimage.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: fproj.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: frot.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: io_png/io_png.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: library.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: numerics1.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: splines.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: /usr/include/opencv/cv.h
CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o: /usr/include/opencv/highgui.h
CMakeFiles/test_ASIFT.dir/compute_asift_keypoints.cpp.o: compute_asift_keypoints.cpp
CMakeFiles/test_ASIFT.dir/compute_asift_keypoints.cpp.o: compute_asift_keypoints.h
@ -251,7 +257,12 @@ CMakeFiles/test_ASIFT.dir/splines.cpp.o: numerics1.h
CMakeFiles/test_ASIFT.dir/splines.cpp.o: splines.cpp
CMakeFiles/test_ASIFT.dir/splines.cpp.o: splines.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: ./io_png/libs/png/png.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: ./io_png/libs/png/pngconf.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: ./io_png/libs/zlib/zconf.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: ./io_png/libs/zlib/zlib.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: ASIFT_matcher.hpp
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: CImg.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: compute_asift_keypoints.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: compute_asift_matches.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: demo_lib_sift.h
@ -260,9 +271,10 @@ CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: filter.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: flimage.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: fproj.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: frot.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: io_png/io_png.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: library.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: numerics1.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: splines.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: test_ASIFT.cpp
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: /usr/include/opencv/cv.h
CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o: /usr/include/opencv/highgui.h

View file

@ -7,7 +7,7 @@ C_FLAGS = -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src
C_DEFINES =
CXX_FLAGS = -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O3 -ftree-vectorize -funroll-loops -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/. -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png/libs/png -I/usr/include/opencv
CXX_FLAGS = -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O2 -ftree-vectorize -funroll-loops -L/usr/X11R6/lib -lm -lpthread -lX11 -std=c++11 -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/. -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png -I/home/harle/catkin_ws/src/BaxterInterface/ASIFT_tests/demo_ASIFT_src/./io_png/libs/png -I/usr/include/opencv
CXX_DEFINES =

View file

@ -1 +1 @@
/usr/bin/c++ -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O3 -ftree-vectorize -funroll-loops CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o CMakeFiles/test_ASIFT.dir/numerics1.cpp.o CMakeFiles/test_ASIFT.dir/frot.cpp.o CMakeFiles/test_ASIFT.dir/splines.cpp.o CMakeFiles/test_ASIFT.dir/fproj.cpp.o CMakeFiles/test_ASIFT.dir/library.cpp.o CMakeFiles/test_ASIFT.dir/flimage.cpp.o CMakeFiles/test_ASIFT.dir/filter.cpp.o CMakeFiles/test_ASIFT.dir/demo_lib_sift.cpp.o CMakeFiles/test_ASIFT.dir/compute_asift_keypoints.cpp.o CMakeFiles/test_ASIFT.dir/compute_asift_matches.cpp.o CMakeFiles/test_ASIFT.dir/orsa.cpp.o CMakeFiles/test_ASIFT.dir/io_png/io_png.c.o -o test_ASIFT -rdynamic io_png/libs/png/libpng.a io_png/libs/zlib/libzlib.a libMatch/libMatch.a libNumerics/libNumerics.a /usr/lib/x86_64-linux-gnu/libopencv_videostab.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ts.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_superres.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_stitching.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ocl.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_gpu.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_contrib.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.8
/usr/bin/c++ -fopenmp -Wall -Wno-strict-aliasing -Wextra -Wno-write-strings -Wno-deprecated -ansi -O2 -ftree-vectorize -funroll-loops -L/usr/X11R6/lib -lm -lpthread -lX11 -std=c++11 CMakeFiles/test_ASIFT.dir/test_ASIFT.cpp.o CMakeFiles/test_ASIFT.dir/ASIFT_matcher.cpp.o CMakeFiles/test_ASIFT.dir/numerics1.cpp.o CMakeFiles/test_ASIFT.dir/frot.cpp.o CMakeFiles/test_ASIFT.dir/splines.cpp.o CMakeFiles/test_ASIFT.dir/fproj.cpp.o CMakeFiles/test_ASIFT.dir/library.cpp.o CMakeFiles/test_ASIFT.dir/flimage.cpp.o CMakeFiles/test_ASIFT.dir/filter.cpp.o CMakeFiles/test_ASIFT.dir/demo_lib_sift.cpp.o CMakeFiles/test_ASIFT.dir/compute_asift_keypoints.cpp.o CMakeFiles/test_ASIFT.dir/compute_asift_matches.cpp.o CMakeFiles/test_ASIFT.dir/orsa.cpp.o CMakeFiles/test_ASIFT.dir/io_png/io_png.c.o -o test_ASIFT -rdynamic io_png/libs/png/libpng.a io_png/libs/zlib/libzlib.a libMatch/libMatch.a libNumerics/libNumerics.a -lX11

View file

@ -26,7 +26,9 @@ IF(CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-strict-aliasing")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra -Wno-write-strings")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated -ansi")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -ftree-vectorize -funroll-loops")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -ftree-vectorize -funroll-loops")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L/usr/X11R6/lib -lm -lpthread -lX11")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
@ -51,5 +53,5 @@ TARGET_LINK_LIBRARIES(demo_ASIFT png zlib Match Numerics)
find_package( OpenCV REQUIRED )
add_executable(test_ASIFT test_ASIFT.cpp ASIFT_matcher.cpp ${ASIFT_srcs})
TARGET_LINK_LIBRARIES(test_ASIFT png zlib Match Numerics ${OpenCV_LIBS})
TARGET_LINK_LIBRARIES(test_ASIFT png zlib Match Numerics X11) #${OpenCV_LIBS})

View file

@ -26,7 +26,9 @@ IF(CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-strict-aliasing")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra -Wno-write-strings")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated -ansi")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -ftree-vectorize -funroll-loops")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -ftree-vectorize -funroll-loops")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L/usr/X11R6/lib -lm -lpthread -lX11")
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
@ -51,5 +53,5 @@ TARGET_LINK_LIBRARIES(demo_ASIFT png zlib Match Numerics)
find_package( OpenCV REQUIRED )
add_executable(test_ASIFT test_ASIFT.cpp ASIFT_matcher.cpp ${ASIFT_srcs})
TARGET_LINK_LIBRARIES(test_ASIFT png zlib Match Numerics)
TARGET_LINK_LIBRARIES(test_ASIFT png zlib Match Numerics X11 ${OpenCV_LIBS})

View file

@ -1,160 +1,21 @@
159 2
0 20
0
289.588 165.29 313.253 275.507
317.143 245.488 464.222 107.223
214.116 209.606 -1.15142e+30 -7.37015e+29
310.196 113.245 6.53619e-39 1.5886e-38
349.105 129.027 6.59031e-42 1.10843e-41
329.902 120.271 0 0
366.206 136.651 2.33751e-41 3.0666e-41
234.895 193.677 0 0
226.39 216.4 -1.1546e+30 -6.65027e+29
302.004 265.42 2.36298e-38 4.66254e-39
213.899 217.268 -1.18647e+30 -7.06243e+29
361.56 175.641 1.17209e-38 6.41512e-39
335.591 109.365 5.47768e-42 1.65872e-41
324.343 230.746 1.05938e-41 2.97776e-42
200.613 231.45 4.47e-41 2.4227e-41
276.83 168.516 3.45406e-41 2.98687e-41
321.742 118.784 2.55849e-41 5.42975e-41
323.003 237.905 5.02436e-41 1.23356e-41
302.831 249.399 8.72729e-42 2.25329e-42
316.596 251.21 6.32448e-41 1.31344e-41
347.217 134.738 1.2337e-41 1.74153e-41
314.703 228.902 1.44404e-41 4.50237e-42
334.101 108.517 2.54336e-42 7.69173e-42
236.131 211.2 7.2087e-41 4.23248e-41
344.853 190.984 -inf -inf
213.288 197.193 2.16088e-38 1.57015e-38
328.318 183.82 1.4474e-41 8.3139e-42
286.908 262.677 0 0
329.308 223.292 -9.30007e+29 -2.75197e+29
214.182 233.924 2.49088e-38 1.26699e-38
355.339 178.388 -6.28131e+29 -3.33573e+29
345.72 134.714 7.56862e-39 1.06848e-38
311.78 113.743 2.23703e-41 5.32732e-41
310.619 231.416 0 0
373.969 159.965 1.85406e-41 1.27798e-41
309.735 165.168 0 0
249.772 140.789 1.76309e-35 2.36081e-35
238.485 207.432 0 0
223.937 244.824 3.37054e-35 1.48264e-35
333.782 128.247 0 0
320.158 247.95 2.81294e-35 6.01841e-36
273.498 158.742 0 0
328.724 185.128 0 0
286.709 245.204 0 0
370.969 152.352 0 0
306.327 263.372 0 0
288.261 278.4 0 0
297.664 164.326 0 0
302.871 262.452 4.5374e-41 9.46577e-42
209.329 222.452 0 0
324.548 216.759 6.27726e-41 2.17061e-41
331.422 164.458 0 0
318.343 289.053 3.53959e-35 3.29092e-36
322.035 239.038 0 0
304.19 261.129 3.38129e-35 7.12636e-36
234.052 160.155 0 0
310.954 163.872 1.94622e-35 1.64761e-35
295.257 280.657 0 0
345.72 134.714 1.13106e-35 1.57846e-35
356.13 194.608 0 0
220.907 219.773 3.55857e-35 2.02597e-35
231.881 208.679 0 0
215.788 233.93 3.83169e-35 1.94385e-35
360.414 133.519 0 0
362.374 195.101 3.78144e-35 1.34684e-35
345.895 212.363 0 0
226.282 154.786 4.69633e-35 5.32135e-35
380.569 149.245 0 0
349.105 129.027 1.85312e-35 3.14536e-35
329.432 223.361 0 0
230.322 240.956 1.21593e-34 5.43138e-35
359.363 127.101 0 0
334.043 219.91 9.06774e-35 2.68924e-35
233.632 193.698 0 0
253.589 132.355 6.1246e-35 9.35665e-35
232.733 192.822 0 0
286.893 264.162 -1.21496e+30 -2.9382e+29
198.279 231.2 2.55199e-38 1.40825e-38
368.5 184.908 2.50622e-41 1.02911e-41
363.087 217.701 0 0
229.075 187.019 3.11913e-35 2.44258e-35
274.599 157.376 0 0
211.173 241.714 -1.30043e+30 -6.25369e+29
286.877 158.426 1.38864e-38 1.34053e-38
314.946 238.305 5.21337e-35 1.36531e-35
330.734 152.817 0 0
211.799 223.313 2.44919e-41 1.37369e-41
336.052 202.095 0 0
328.607 157.198 -5.70597e+29 -5.08571e+29
306.665 261.501 2.32019e-38 4.68836e-39
343.543 223.417 -8.8466e+29 -2.254e+29
320.64 117.778 6.49171e-39 1.4351e-38
308.946 228.741 3.9249e-41 1.25472e-41
399.689 171.593 0 0
361.793 216.159 1.59402e-40 3.52847e-41
229.794 223.1 0 0
300.752 265.267 1.23104e-41 2.43826e-42
334.005 116.532 0 0
284.359 262.855 0 0
360.535 177.034 0 0
218.66 222.229 7.30076e-43 4.11982e-43
225.668 227.496 0 0
223.788 226.355 0 0
383.632 157.799 0 0
368.749 179.732 -2.22915e+29 -1.03424e+29
297.472 251.055 2.24707e-38 5.71785e-39
410.115 160.153 2.32616e-43 1.12104e-43
308.694 241.623 0 0
382.686 149.915 -1.42669e+29 -1.23198e+29
374.146 144.098 7.52084e-39 7.76562e-39
344.343 212.716 5.04467e-43 1.55544e-43
348.723 199.907 0 0
329.632 112.612 -9.8575e+28 -2.64062e+29
266.881 171.626 1.57957e-38 1.37452e-38
306.742 242.633 6.53005e-43 1.7236e-43
390.409 153.214 0 0
215.242 210.831 0 0
219.261 221.14 0 0
207.925 200.542 0 0
388.111 167.273 0 0
360.385 121.115 0 0
341.413 199.071 0 0
407.076 152.567 0 0
415.84 149.312 0 0
228.549 240.569 0 0
289.53 144.534 0 0
228.116 227.749 0 0
294.689 261.183 0 0
382.615 158.108 0 0
326.441 231.344 0 0
329.592 155.938 0 0
312.816 233.08 0 0
291.013 271.353 0 0
400.742 149.18 0 0
345.517 213.318 0 0
344.363 127.999 0 0
318.023 219.046 0 0
302.491 189.846 0 0
340.537 213.625 0 0
414.455 163.961 0 0
408.368 193.313 0 0
359.498 179.021 0 0
307.538 228.39 0 0
383.958 144.21 0 0
349.222 192.211 0 0
201.086 208.189 0 0
212.478 199.723 0 0
402.114 151.4 0 0
361.169 186.668 0 0
304.703 257.817 0 0
326.93 156.212 0 0
236.503 212.397 0 0
362.317 206.64 0 0
385.622 182.61 0 0
216.987 220.949 0 0
305.227 190.221 0 0
405.003 185.654 0 0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 216 KiB

Before After
Before After

View file

@ -19,18 +19,49 @@ int main(int argc, char **argv)
char* output_img = "./results/res.png";
char* output_match = "./results/matching.txt";
char* output_references = "./results/references.txt";
// char* output_references = "./results/references.txt";
//////////////////////////////////////////////// Input
float * iarr1;
size_t w1, h1;
if (NULL == (iarr1 = read_png_f32_gray(argv[1], &w1, &h1))) {
std::cerr << "Unable to load image file " << argv[1] << std::endl;
return 1;
}
std::vector<float> ipixels1(iarr1, iarr1 + w1 * h1);
free(iarr1); /*memcheck*/
// float * iarr1;
// size_t w1, h1;
// if (NULL == (iarr1 = read_png_f32_gray(argv[1], &w1, &h1))) {
// std::cerr << "Unable to load image file " << argv[1] << std::endl;
// return 1;
// }
// std::vector<float> ipixels1(iarr1, iarr1 + w1 * h1);
// free(iarr1); /*memcheck*/
cimg_library::CImg<float> image;
try
{
image =cimg_library::CImg<float>(argv[1]);
}
catch(cimg_library::CImgIOException)
{
std::cerr << "Unable to load image file " << argv[1] << std::endl;
return false;
}
//Convert to grayscale
cimg_library::CImg<float> gray(image.width(), image.height(), 1, 1, 0);
cimg_forXY(image,x,y) {
// Separation of channels
int R = (int)image(x,y,0,0);
int G = (int)image(x,y,0,1);
int B = (int)image(x,y,0,2);
// Arithmetic addition of channels for gray
// int grayValue = (int)(0.33*R + 0.33*G + 0.33*B);
// Real weighted addition of channels for gray
int grayValueWeight = (int)(0.299*R + 0.587*G + 0.114*B);
// saving píxel values into image information
// gray(x,y,0,0) = grayValue;
gray(x,y,0,0) = grayValueWeight;
}
vector<float> ipixels1;
int w1=gray.width(), h1=gray.height();
ipixels1.assign(gray.begin(), gray.end());
// cout<<"Image size : "<<ipixels1.size()<<" - "<<image.spectrum()<<" - "<<w1<<" / "<<h1<<endl;
///// Resize the images to area wS*hW in remaining the apsect-ratio
///// Resize if the resize flag is not set or if the flag is set unequal to 0
float wS = IM_X;
@ -106,26 +137,36 @@ int main(int argc, char **argv)
zoom1 = 1;
}
unsigned int nb_ref =2;
std::string refData[] = {
"book_training/train_image_000.png",
"book_training/train_image_001.png",
"book_training/train_image_002.png",
"book_training/train_image_003.png"};
// unsigned int nb_ref =11;
// unsigned int nb_ref =2;
// std::string refData[] = {
// "toy_training/obj11__processed__0000_color.png",
// "toy_training/obj11__processed__0001_color.png",
// "toy_training/obj11__processed__0002_color.png",
// "toy_training/obj11__processed__0003_color.png",
// "toy_training/obj11__processed__0004_color.png",
// "toy_training/obj11__processed__0005_color.png",
// "toy_training/obj11__processed__0006_color.png",
// "toy_training/obj11__processed__0007_color.png",
// "toy_training/obj11__processed__0008_color.png",
// "toy_training/obj11__processed__0009_color.png",
// "toy_training/obj11__processed__0010_color.png",};
// "book_training/train_image_000.png",
// "book_training/train_image_001.png",
// "book_training/train_image_002.png",
// "book_training/train_image_003.png"};
unsigned int nb_ref =21;
std::string refData[] = {
"toy_training/obj1bg1__processed__0000_color.jpg",
"toy_training/obj1bg1__processed__0001_color.jpg",
"toy_training/obj1bg1__processed__0002_color.jpg",
"toy_training/obj1bg1__processed__0003_color.jpg",
"toy_training/obj1bg1__processed__0004_color.jpg",
"toy_training/obj1bg1__processed__0005_color.jpg",
"toy_training/obj1bg1__processed__0006_color.jpg",
"toy_training/obj1bg1__processed__0007_color.jpg",
"toy_training/obj1bg1__processed__0008_color.jpg",
"toy_training/obj1bg1__processed__0009_color.jpg",
"toy_training/obj1bg1__processed__0010_color.jpg",
"toy_training/obj1bg1__processed__0011_color.jpg",
"toy_training/obj1bg1__processed__0012_color.jpg",
"toy_training/obj1bg1__processed__0013_color.jpg",
"toy_training/obj1bg1__processed__0014_color.jpg",
"toy_training/obj1bg1__processed__0015_color.jpg",
"toy_training/obj1bg1__processed__0016_color.jpg",
"toy_training/obj1bg1__processed__0017_color.jpg",
"toy_training/obj1bg1__processed__0018_color.jpg",
"toy_training/obj1bg1__processed__0019_color.jpg",
"toy_training/obj1bg1__processed__0020_color.jpg"};
int tilt_ref = 7, tilt_input = 1;
int nb_match;
@ -147,7 +188,10 @@ int main(int argc, char **argv)
matcher.addReference(refData[i].c_str(), tilt_ref);
}
matcher.saveReferences(output_references);
// matcher.saveReferences(output_references);
// matcher.print();
// matcher.loadReferences(output_references);
// matcher.print();
nb_match = matcher.match(ipixels1_zoom, wS1, hS1, tilt_input);
@ -196,7 +240,9 @@ int main(int argc, char **argv)
}
///////////////////////////////////////////////////////////////// Save imgOut
write_png_f32(output_img, opixelsASIFT, w1, h1, 1);
// write_png_f32(output_img, opixelsASIFT, w1, h1, 1);
image.assign(opixelsASIFT,w1,h1);
image.save(output_img);
delete[] opixelsASIFT; /*memcheck*/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB