[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libcvd-members] libcvd cvd/convolution.h cvd/draw.h cvd/fast_co...
From: |
Edward Rosten |
Subject: |
[libcvd-members] libcvd cvd/convolution.h cvd/draw.h cvd/fast_co... |
Date: |
Fri, 12 Nov 2010 14:07:33 +0000 |
CVSROOT: /cvsroot/libcvd
Module name: libcvd
Changes by: Edward Rosten <edrosten> 10/11/12 14:07:32
Modified files:
cvd : convolution.h draw.h fast_corner.h gl_helpers.h
image.h image_convert.h integral_image.h
morphology.h tensor_voting.h utility.h
videoframe.h vision.h
cvd/internal : load_and_save.h
cvd_src : convolution.cc
cvd_src/SSE2 : two_thirds_sample.cc
cvd_src/fast : fast_10_detect.cxx fast_10_score.cxx
fast_11_detect.cxx fast_11_score.cxx
fast_12_detect.cxx fast_12_score.cxx
fast_7_detect.cxx fast_7_score.cxx
fast_8_detect.cxx fast_8_score.cxx
fast_9_detect.cxx fast_9_score.cxx prototypes.h
cvd_src/i686 : convert_rgb_to_y.cc convolve_gaussian.cc
median_3x3.cc
cvd_src/noarch : convert_rgb_to_y.cc median_3x3.cc
two_thirds_sample.cc
test : bayer_test.cxx fast_test.cxx
Removed files:
. : .cproject .cvsignore .project
cvd : config.h
progs : .cvsignore
Log message:
Revert new-image changes on the mainline
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libcvd/.cproject?cvsroot=libcvd&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/.cvsignore?cvsroot=libcvd&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/.project?cvsroot=libcvd&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/convolution.h?cvsroot=libcvd&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/draw.h?cvsroot=libcvd&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/fast_corner.h?cvsroot=libcvd&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/gl_helpers.h?cvsroot=libcvd&r1=1.46&r2=1.47
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/image.h?cvsroot=libcvd&r1=1.49&r2=1.50
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/image_convert.h?cvsroot=libcvd&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/integral_image.h?cvsroot=libcvd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/morphology.h?cvsroot=libcvd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/tensor_voting.h?cvsroot=libcvd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/utility.h?cvsroot=libcvd&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/videoframe.h?cvsroot=libcvd&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/vision.h?cvsroot=libcvd&r1=1.36&r2=1.37
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/config.h?cvsroot=libcvd&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/internal/load_and_save.h?cvsroot=libcvd&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/convolution.cc?cvsroot=libcvd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/SSE2/two_thirds_sample.cc?cvsroot=libcvd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_10_detect.cxx?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_10_score.cxx?cvsroot=libcvd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_11_detect.cxx?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_11_score.cxx?cvsroot=libcvd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_12_detect.cxx?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_12_score.cxx?cvsroot=libcvd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_7_detect.cxx?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_7_score.cxx?cvsroot=libcvd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_8_detect.cxx?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_8_score.cxx?cvsroot=libcvd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_9_detect.cxx?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/fast_9_score.cxx?cvsroot=libcvd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/fast/prototypes.h?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/i686/convert_rgb_to_y.cc?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/i686/convolve_gaussian.cc?cvsroot=libcvd&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/i686/median_3x3.cc?cvsroot=libcvd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/noarch/convert_rgb_to_y.cc?cvsroot=libcvd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/noarch/median_3x3.cc?cvsroot=libcvd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd_src/noarch/two_thirds_sample.cc?cvsroot=libcvd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/libcvd/progs/.cvsignore?cvsroot=libcvd&r1=1.1&r2=0
http://cvs.savannah.gnu.org/viewcvs/libcvd/test/bayer_test.cxx?cvsroot=libcvd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/libcvd/test/fast_test.cxx?cvsroot=libcvd&r1=1.4&r2=1.5
Patches:
Index: cvd/convolution.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/convolution.h,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- cvd/convolution.h 12 Nov 2010 01:08:19 -0000 1.17
+++ cvd/convolution.h 12 Nov 2010 14:07:31 -0000 1.18
@@ -520,7 +520,7 @@
void compute_van_vliet_b(double sigma, double b[]);
void compute_triggs_M(const double b[], double M[][3]);
-void van_vliet_blur(const double b[], const BasicImage<float> in,
BasicImage<float> out);
+void van_vliet_blur(const double b[], const SubImage<float> in,
SubImage<float> out);
void convolveGaussian(const BasicImage<float>& I, BasicImage<float>& out,
double sigma, double sigmas=3.0);
void convolveGaussian_fir(const BasicImage<float>& I, BasicImage<float>& out,
double sigma, double sigmas=3.0);
Index: cvd/draw.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/draw.h,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- cvd/draw.h 12 Nov 2010 01:08:19 -0000 1.14
+++ cvd/draw.h 12 Nov 2010 14:07:31 -0000 1.15
@@ -124,7 +124,7 @@
/// @param c color of the line
/// @ingroup gGraphics
template <class T>
-void drawLine(BasicImage<T>& im, double x1, double y1, double x2, double y2,
const T& c)
+void drawLine(SubImage<T>& im, double x1, double y1, double x2, double y2,
const T& c)
{
double dx = x2-x1;
double dy = y2-y1;
@@ -146,7 +146,7 @@
/// @param c color of the line
/// @ingroup gGraphics
template <class T>
-void drawLine(BasicImage<T>& im, const ImageRef& p1, const ImageRef& p2, const
T& c)
+void drawLine(SubImage<T>& im, const ImageRef& p1, const ImageRef& p2, const
T& c)
{
drawLine(im, double(p1.x), double(p1.y), double(p2.x), double(p2.y), c);
}
@@ -159,7 +159,7 @@
/// @param c color of the line
/// @ingroup gGraphics
template <class T>
-void drawLine(BasicImage<T>& im, const TooN::Vector<2>& p1, const
TooN::Vector<2>& p2, const T& c)
+void drawLine(SubImage<T>& im, const TooN::Vector<2>& p1, const
TooN::Vector<2>& p2, const T& c)
{
drawLine(im, p1[0], p1[1], p2[0], p2[1], c);
}
@@ -175,7 +175,7 @@
/// @param c color of the line
/// @ingroup gGraphics
template <class T>
-void drawShape(BasicImage<T>& im, const ImageRef& offset, const
std::vector<ImageRef>& points, const T& c)
+void drawShape(SubImage<T>& im, const ImageRef& offset, const
std::vector<ImageRef>& points, const T& c)
{
for (unsigned int i=0; i<points.size()-1; i++)
drawLine(im, points[i]+offset, points[i+1]+offset, c);
@@ -213,7 +213,7 @@
/// @param c color of the box
/// @ingroup gGraphics
template <class T>
-void drawBox(BasicImage<T> &im, const ImageRef & upperleft, const ImageRef &
lowerright, const T& c)
+void drawBox(SubImage<T> &im, const ImageRef & upperleft, const ImageRef &
lowerright, const T& c)
{
drawLine(im, upperleft.x, upperleft.y, upperleft.x, lowerright.y, c);
drawLine(im, upperleft.x, upperleft.y, lowerright.x, upperleft.y, c);
@@ -228,7 +228,7 @@
/// @param c color of the box
/// @ingroup gGraphics
template <class T>
-void drawCross(BasicImage<T>& im, const ImageRef& p, double len, const T& c)
+void drawCross(SubImage<T>& im, const ImageRef& p, double len, const T& c)
{
drawLine(im, p.x-len, p.y, p.x+len, p.y, c);
drawLine(im, p.x, p.y-len, p.x, p.y+len, c);
Index: cvd/fast_corner.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/fast_corner.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -b -r1.18 -r1.19
--- cvd/fast_corner.h 12 Nov 2010 01:08:19 -0000 1.18
+++ cvd/fast_corner.h 12 Nov 2010 14:07:31 -0000 1.19
@@ -60,7 +60,7 @@
/// @param barrier Initial corner detection threshold. Using the
same threshold as for corner detection will produce the
/// quickest results, but any lower value (e.g. 0) will
produce correct results.
/// @ingroup gVision
- void fast_corner_score_7(const BasicImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+ void fast_corner_score_7(const SubImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
/// Perform tree based 8 point FAST feature detection. This is more
like an edge detector.
@@ -80,7 +80,7 @@
/// @param barrier Initial corner detection threshold. Using the
same threshold as for corner detection will produce the
/// quickest results, but any lower value (e.g. 0) will
produce correct results.
/// @ingroup gVision
- void fast_corner_score_8(const BasicImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+ void fast_corner_score_8(const SubImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
/** Perform tree based 9 point FAST feature detection as described in:
@@ -113,7 +113,7 @@
/// @param barrier Initial corner detection threshold. Using the
same threshold as for corner detection will produce the
/// quickest results, but any lower value (e.g. 0) will
produce correct results.
/// @ingroup gVision
- void fast_corner_score_9(const BasicImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+ void fast_corner_score_9(const SubImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
///Perform FAST-9 corner detection (see @ref fast_corner_detect_9),
with nonmaximal
@@ -142,7 +142,7 @@
/// @param barrier Initial corner detection threshold. Using the
same threshold as for corner detection will produce the
/// quickest results, but any lower value (e.g. 0) will
produce correct results.
/// @ingroup gVision
- void fast_corner_score_10(const BasicImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+ void fast_corner_score_10(const SubImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
/// Perform tree based 11 point FAST feature detection
/// If you use this, please cite the paper given in @ref
fast_corner_detect_9
@@ -161,7 +161,7 @@
/// @param barrier Initial corner detection threshold. Using the
same threshold as for corner detection will produce the
/// quickest results, but any lower value (e.g. 0) will
produce correct results.
/// @ingroup gVision
- void fast_corner_score_11(const BasicImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+ void fast_corner_score_11(const SubImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
/// Perform tree based 12 point FAST feature detection
/// If you use this, please cite the paper given in @ref
fast_corner_detect_9
@@ -180,7 +180,7 @@
/// @param barrier Initial corner detection threshold. Using the
same threshold as for corner detection will produce the
/// quickest results, but any lower value (e.g. 0) will
produce correct results.
/// @ingroup gVision
- void fast_corner_score_12(const BasicImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
+ void fast_corner_score_12(const SubImage<byte>& i, const
std::vector<ImageRef>& corners, int b, std::vector<int>& scores);
Index: cvd/gl_helpers.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/gl_helpers.h,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -b -r1.46 -r1.47
--- cvd/gl_helpers.h 12 Nov 2010 01:08:19 -0000 1.46
+++ cvd/gl_helpers.h 12 Nov 2010 14:07:31 -0000 1.47
@@ -527,7 +527,7 @@
/// Use glRasterPos to set the current raster position
/// @param i The image to draw
///@ingroup gGL
- template<class C> inline void glDrawPixels(const BasicImage<C>& i)
+ template<class C> inline void glDrawPixels(const SubImage<C>& i)
{
::glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
::glPixelStorei(GL_UNPACK_ROW_LENGTH, i.row_stride());
@@ -559,7 +559,7 @@
/// note the reordering of the various parameters to make better use of
default parameters
/// @param i the image to set as texture
/// @ingroup gGL
- template<class C> inline void glTexBasicImage2D( const BasicImage<C>
&i, GLint xoffset = 0, GLint yoffset = 0, GLenum target = GL_TEXTURE_2D, GLint
level = 0)
+ template<class C> inline void glTexSubImage2D( const SubImage<C> &i,
GLint xoffset = 0, GLint yoffset = 0, GLenum target = GL_TEXTURE_2D, GLint
level = 0)
{
::glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
::glPixelStorei(GL_UNPACK_ROW_LENGTH, i.row_stride());
@@ -571,7 +571,7 @@
/// note the reordering of the various parameters to make better use of
default parameters
/// @param i the image to set as texture
/// @ingroup gGL
- template<class C> inline void glTexImage2D( const BasicImage<C> &i,
GLint border = 0, GLenum target = GL_TEXTURE_2D, GLint level = 0)
+ template<class C> inline void glTexImage2D( const SubImage<C> &i, GLint
border = 0, GLenum target = GL_TEXTURE_2D, GLint level = 0)
{
::glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
::glPixelStorei(GL_UNPACK_ROW_LENGTH, i.row_stride());
Index: cvd/image.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/image.h,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -b -r1.49 -r1.50
--- cvd/image.h 12 Nov 2010 01:08:19 -0000 1.49
+++ cvd/image.h 12 Nov 2010 14:07:31 -0000 1.50
@@ -125,13 +125,13 @@
}
}
-template<class T> class BasicImage;
+template<class T> class SubImage;
-template<class T> class ConstBasicImageIterator
+template<class T> class ConstSubImageIterator
{
public:
- const ConstBasicImageIterator& operator++()
+ const ConstSubImageIterator& operator++()
{
ptr++;
if(ptr == row_end)
@@ -153,7 +153,7 @@
const T* operator->() const { return ptr; }
const T& operator*() const { return *ptr;}
- bool operator<(const ConstBasicImageIterator& s) const
+ bool operator<(const ConstSubImageIterator& s) const
{
//It's illegal to iterate _past_ end(), so < is
equivalent to !=
//for end iterators.
@@ -167,12 +167,12 @@
return ptr < s.ptr;
}
- bool operator==(const ConstBasicImageIterator& s) const
+ bool operator==(const ConstSubImageIterator& s) const
{
return !((*this)!=s);
}
- bool operator!=(const ConstBasicImageIterator& s) const
+ bool operator!=(const ConstSubImageIterator& s) const
{
if(is_end && s.is_end)
return 0;
@@ -194,10 +194,10 @@
- ConstBasicImageIterator()
+ ConstSubImageIterator()
{}
- ConstBasicImageIterator(const T* start, int image_width, int
row_stride, const T* off_end)
+ ConstSubImageIterator(const T* start, int image_width, int
row_stride, const T* off_end)
:ptr(const_cast<T*>(start)),
row_end(start + image_width),
end(off_end),
@@ -207,7 +207,7 @@
{ }
//Prevent automatic conversion from a pointer (ie
Image::iterator)
- explicit ConstBasicImageIterator(const T* end)
+ explicit ConstSubImageIterator(const T* end)
:ptr(const_cast<T*>(end)),is_end(1),row_increment(0),total_width(0)
{ }
@@ -218,25 +218,25 @@
int row_increment, total_width;
};
-template<class T> class BasicImageIterator: public ConstBasicImageIterator<T>
+template<class T> class SubImageIterator: public ConstSubImageIterator<T>
{
public:
- BasicImageIterator(T* start, int image_width, int row_stride,
const T* off_end)
- :ConstBasicImageIterator<T>(start, image_width, row_stride,
off_end)
+ SubImageIterator(T* start, int image_width, int row_stride,
const T* off_end)
+ :ConstSubImageIterator<T>(start, image_width, row_stride,
off_end)
{}
- explicit BasicImageIterator(T* end)
- :ConstBasicImageIterator<T>(end)
+ explicit SubImageIterator(T* end)
+ :ConstSubImageIterator<T>(end)
{ }
- BasicImageIterator()
+ SubImageIterator()
{}
typedef T* pointer;
typedef T& reference;
- T* operator->() { return ConstBasicImageIterator<T>::ptr; }
- T& operator*() { return *ConstBasicImageIterator<T>::ptr;}
+ T* operator->() { return ConstSubImageIterator<T>::ptr; }
+ T& operator*() { return *ConstSubImageIterator<T>::ptr;}
};
/// A generic image class to manage a block of arbitrarily padded data as an
image. Provides
@@ -249,14 +249,14 @@
/// arbitrary externally-managed block of data as though it were an image. Use
/// the derived Image class if you want an image which also has its own data.
/// @ingroup gImage
-template<class T> class BasicImage
+template<class T> class SubImage
{
public:
/// Construct an image from a block of data.
/// @param data The image data in horizontal scanline order
/// @param size The size of the image
/// @param stride The row stride (or width, including the
padding)
- BasicImage(T* data, const ImageRef& size, int stride = size.x)
+ SubImage(T* data, const ImageRef& size, int stride)
:my_data(data),my_size(size),my_stride(stride)
{
}
@@ -278,7 +278,7 @@
}
/// The image data is not destroyed when a BasicImage is
destroyed.
- ~BasicImage()
+ ~SubImage()
{}
/// Access a pixel from the image. Bounds checking is only
performed if the library is compiled
@@ -338,8 +338,8 @@
return my_data;
}
- typedef BasicImageIterator<T> iterator;
- typedef ConstBasicImageIterator<T> const_iterator;
+ typedef SubImageIterator<T> iterator;
+ typedef ConstSubImageIterator<T> const_iterator;
/// The data type of the pixels in the image.
typedef T value_type;
@@ -347,28 +347,28 @@
/// Returns an iterator referencing the first (top-left) pixel
in the image
inline iterator begin()
{
- return iterator(data(), size().x, my_stride, end_ptr());
+ return SubImageIterator<T>(data(), size().x, my_stride,
end_ptr());
}
/// Returns a const iterator referencing the first (top-left)
pixel in the image
inline const_iterator begin() const
{
- return const_iterator(data(), size().x, my_stride,
end_ptr());
+ return ConstSubImageIterator<T>(data(), size().x,
my_stride, end_ptr());
}
/// Returns an iterator pointing to one past the end of the
image
inline iterator end()
{
//Operator [] would always throw here!
- return iterator(end_ptr());
+ return SubImageIterator<T>(end_ptr());
}
/// Returns a const iterator pointing to one past the end of
the image
inline const_iterator end() const
{
//Operator [] would always throw here!
- return const_iterator(end_ptr());
+ return ConstSubImageIterator<T>(end_ptr());
}
- inline void copy_from( const BasicImage<T> & other ){
+ inline void copy_from( const SubImage<T> & other ){
CVD_IMAGE_ASSERT(other.size() == this->size(),
Exceptions::Image::IncompatibleImageSizes);
std::copy(other.begin(), other.end(), this->begin());
}
@@ -407,7 +407,7 @@
/// Copy constructor
/// @param copyof The image to copy
- BasicImage(const BasicImage& copyof)
+ SubImage(const SubImage& copyof)
{
my_size = copyof.my_size;
my_data = copyof.my_data;
@@ -418,29 +418,27 @@
/// Return a sub image
/// @param start Top left pixel of the sub image
/// @param size width and height of the sub image
- BasicImage sub_image(const ImageRef& start, const ImageRef&
size)
+ SubImage sub_image(const ImageRef& start, const ImageRef& size)
{
CVD_IMAGE_ASSERT(in_image(start),
ImageError::AccessOutsideImage);
CVD_IMAGE_ASSERT(in_image(start + size -
ImageRef(1,1)), ImageError::AccessOutsideImage);
-
- T* ptr = my_data + start.y * my_stride + start.x;
- return BasicImage(ptr, size, my_stride);
+ return SubImage( &operator[](start), size, my_stride);
}
/// Return const a sub image
/// @param start Top left pixel of the sub image
/// @param size width and height of the sub image
- const BasicImage sub_image(const ImageRef& start, const
ImageRef& size) const
+ const SubImage sub_image(const ImageRef& start, const ImageRef&
size) const
{
CVD_IMAGE_ASSERT(in_image(start),
ImageError::AccessOutsideImage);
CVD_IMAGE_ASSERT(in_image(start + size -
ImageRef(1,1)), ImageError::AccessOutsideImage);
- T* ptr = my_data + start.y * my_stride + start.x;
- return BasicImage(ptr, size, my_stride);
+ T*ptr = my_data + start.y * my_stride + start.x;
+ return SubImage(ptr, size, my_stride);
}
/// Return a reference to a SubImage. Useful for passing
anonymous SubImages to functions.
- BasicImage& ref()
+ SubImage& ref()
{
return *this;
}
@@ -456,14 +454,12 @@
///Return an off-the-end pointer without ever throwing
AccessOutsideImage
const T* end_ptr() const { return my_data+my_size.y*my_stride; }
- BasicImage()
+ SubImage()
{}
};
-#if 0
-
/// A generic image class to manage a block of data as an image. Provides
/// basic image access such as accessing a particular pixel co-ordinate.
/// @param T The pixel type for this image. Typically either
@@ -535,6 +531,7 @@
iterator end() { return
SubImage<T>::my_data+SubImage<T>::totalsize(); }
+
protected:
/// The default constructor does nothing
BasicImage()
@@ -542,7 +539,6 @@
private:
};
-#endif
/** An input iterator which just returns N copies of the same
value over and over again. This can be used for construction
@@ -679,6 +675,19 @@
std::copy(copy.begin(), copy.end(), this->begin());
}
+
+
+
+ ///Make a (new) copy of the image, also making a copy of the
data
+ ///@param copy The image to copy
+ void copy_from(const SubImage<T>& copy)
+ {
+ Image<T> tmp(copy.size());
+ *this = tmp;
+
+ std::copy(copy.begin(), copy.end(), this->begin());
+ }
+
///Make this image independent of any copies (i.e. force a copy
of the image data).
void make_unique()
{
Index: cvd/image_convert.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/image_convert.h,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- cvd/image_convert.h 12 Nov 2010 01:08:19 -0000 1.17
+++ cvd/image_convert.h 12 Nov 2010 14:07:31 -0000 1.18
@@ -32,7 +32,7 @@
// The most general case: one row at a time
template <class From, class To, class Conv=typename
Pixel::DefaultConversion<From,To>::type, int
both_pod=Internal::is_POD<From>::is_pod && Internal::is_POD<To>::is_pod> struct
ConvertImage {
- static void convert(const BasicImage<From>& from, BasicImage<To>& to) {
+ static void convert(const SubImage<From>& from, SubImage<To>& to) {
for (int r=0; r<from.size().y; r++)
Pixel::ConvertPixels<From,To,Conv>::convert(from[r], to[r],
from.size().x);
};
@@ -40,29 +40,36 @@
// The blat case: memcpy all data at once
template <class T> struct ConvertImage<T,T,Pixel::GenericConversion<T,T>,1> {
- static void convert(const BasicImage<T>& from, BasicImage<T>& to) {
+ static void convert(const SubImage<T>& from, SubImage<T>& to) {
memcpy(to.data(), from.data(), from.totalsize() * sizeof(T));
};
};
template <> struct ConvertImage<Rgb<byte>, byte, Pixel::CIE<Rgb<byte>,
byte>, 1> {
- static void convert(const BasicImage<Rgb<byte> >& from,
BasicImage<byte>& to);
+ static void convert(const SubImage<Rgb<byte> >& from, SubImage<byte>&
to);
};
- template<class Conv, class C, class D> void convert_image(const
BasicImage<C>& from, BasicImage<D>& to)
+ template<class Conv, class C, class D> void convert_image(const SubImage<C>&
from, SubImage<D>& to)
{
if (from.size() != to.size())
throw Exceptions::Image::IncompatibleImageSizes(__FUNCTION__);
ConvertImage<C,D,Conv>::convert(from, to);
}
- template<template <class From, class To> class Conv, class C, class D> void
convert_image(const BasicImage<C>& from, BasicImage<D>& to)
+ template<template <class From, class To> class Conv, class C, class D> void
convert_image(const SubImage<C>& from, SubImage<D>& to)
{
if (from.size() != to.size())
throw Exceptions::Image::IncompatibleImageSizes(__FUNCTION__);
ConvertImage<C,D,Conv<C,D> >::convert(from, to);
}
+ template<class C, class D> void convert_image(const SubImage<C>& from,
SubImage<D>& to)
+ {
+ if (from.size() != to.size())
+ throw Exceptions::Image::IncompatibleImageSizes(__FUNCTION__);
+ ConvertImage<C,D>::convert(from, to);
+ }
+
template<class C, class D> void convert_image(const BasicImage<C>& from,
BasicImage<D>& to)
{
if (from.size() != to.size())
@@ -76,14 +83,14 @@
/// @param Conv The conversion to use
/// @param from The image to convert from
/// @ingroup gImageIO
- template<class D, class Conv, class C> Image<D> convert_image(const
BasicImage<C>& from)
+ template<class D, class Conv, class C> Image<D> convert_image(const
SubImage<C>& from)
{
Image<D> to(from.size());
convert_image<Conv>(from, to);
return to;
}
- template<class D, template <class From, class To> class Conv, class C>
Image<D> convert_image(const BasicImage<C>& from)
+ template<class D, template <class From, class To> class Conv, class C>
Image<D> convert_image(const SubImage<C>& from)
{
Image<D> to(from.size());
convert_image<Conv>(from, to);
@@ -95,6 +102,18 @@
/// @param C The source image pixel type
/// @param from The image to convert from
/// @ingroup gImageIO
+ template<class D, class C> Image<D> convert_image(const SubImage<C>& from)
+ {
+ Image<D> to(from.size());
+ convert_image(from, to);
+ return to;
+ }
+
+ /// Convert an image from one type to another using the default.
+ /// @param D The destination image pixel type
+ /// @param C The source image pixel type
+ /// @param from The image to convert from
+ /// @ingroup gImageIO
template<class D, class C> Image<D> convert_image(const BasicImage<C>& from)
{
Image<D> to(from.size());
Index: cvd/integral_image.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/integral_image.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- cvd/integral_image.h 12 Nov 2010 01:08:19 -0000 1.5
+++ cvd/integral_image.h 12 Nov 2010 14:07:31 -0000 1.6
@@ -37,7 +37,7 @@
/// @param out The source image.
/// @ingroup gVision
- template<class S, class D> void integral_image(const BasicImage<S>& in,
BasicImage<D>& out)
+ template<class S, class D> void integral_image(const SubImage<S>& in,
SubImage<D>& out)
{
if( in.size() != out.size())
throw
Exceptions::Vision::IncompatibleImageSizes("integral_image");
@@ -71,11 +71,11 @@
template<class C> struct ImagePromise<IntegralImage<C>
>
{
- ImagePromise(const BasicImage<C>& im)
+ ImagePromise(const SubImage<C>& im)
:i(im)
{}
- const BasicImage<C>& i;
+ const SubImage<C>& i;
template<class D> void execute(Image<D>& j)
{
j.resize(i.size());
@@ -84,7 +84,7 @@
};
};
- template<class C>
Internal::ImagePromise<Internal::IntegralImage<C> > integral_image(const
BasicImage<C>& c)
+ template<class C>
Internal::ImagePromise<Internal::IntegralImage<C> > integral_image(const
SubImage<C>& c)
{
return
Internal::ImagePromise<Internal::IntegralImage<C> >(c);
}
Index: cvd/morphology.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/morphology.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- cvd/morphology.h 12 Nov 2010 01:08:19 -0000 1.5
+++ cvd/morphology.h 12 Nov 2010 14:07:31 -0000 1.6
@@ -17,7 +17,7 @@
using namespace std;
//Compute pointer offsets for a bunch of ImageRef
offsets.
- template<class T> vector<ptrdiff_t> offsets(const
vector<ImageRef>& v, const BasicImage<T>& s)
+ template<class T> vector<ptrdiff_t> offsets(const
vector<ImageRef>& v, const SubImage<T>& s)
{
vector<ptrdiff_t> off;
@@ -79,7 +79,7 @@
/// @param out The destination image.
/// @ingroup gVision
template<class Accumulator, class T>
- void morphology(const BasicImage<T>& in, const std::vector<ImageRef>&
selem, const Accumulator& a_, BasicImage<T>& out)
+ void morphology(const SubImage<T>& in, const std::vector<ImageRef>&
selem, const Accumulator& a_, SubImage<T>& out)
{
using Internal::MorphologyHelpers::offsets;
using Internal::MorphologyHelpers::row_split;
@@ -277,11 +277,11 @@
template<class C, class D> struct
ImagePromise<PerformMorphology<C, D> >
{
- ImagePromise(const BasicImage<C>& im, const D&
acc, const std::vector<ImageRef>& s_)
+ ImagePromise(const SubImage<C>& im, const D&
acc, const std::vector<ImageRef>& s_)
:i(im),a(acc),s(s_)
{}
- const BasicImage<C>& i;
+ const SubImage<C>& i;
const D& a;
const std::vector<ImageRef>& s;
@@ -293,7 +293,7 @@
};
};
- template<class C, class D>
Internal::ImagePromise<Internal::PerformMorphology<C, D> > morphology(const
BasicImage<C>& c, const std::vector<ImageRef>& selem, const D& a)
+ template<class C, class D>
Internal::ImagePromise<Internal::PerformMorphology<C, D> > morphology(const
SubImage<C>& c, const std::vector<ImageRef>& selem, const D& a)
{
return
Internal::ImagePromise<Internal::PerformMorphology<C, D> >(c, a, selem);
}
@@ -306,7 +306,7 @@
/// @param a_ The morphological operation to perform. See
Morphology
/// @param out The destination image.
/// @ingroup gVision
- Image<T> morphology(const BasicImage<T>& in, const
std::vector<ImageRef>& selem, const Accumulator& a_);
+ Image<T> morphology(const SubImage<T>& in, const
std::vector<ImageRef>& selem, const Accumulator& a_);
#endif
@@ -592,7 +592,7 @@
return v[2];
}
- template<class T> T median4(const BasicImage<T>& im, int r, int
c)
+ template<class T> T median4(const SubImage<T>& im, int r, int c)
{
return median4(im[r][c], im[r][c+1], im[r+1][c],
im[r+1][c+1]);
}
@@ -604,18 +604,18 @@
return v[3];
}
- template<class T> T median6_row(const BasicImage<T>& im, int r,
int c)
+ template<class T> T median6_row(const SubImage<T>& im, int r,
int c)
{
return median6(im[r][c], im[r][c+1], im[r][c+2],
im[r+1][c], im[r+1][c+1], im[r+1][c+2]);
}
- template<class T> T median6_col(const BasicImage<T>& im, int r,
int c)
+ template<class T> T median6_col(const SubImage<T>& im, int r,
int c)
{
return median6(im[r][c], im[r][c+1], im[r+1][c],
im[r+1][c+1], im[r+2][c], im[r+2][c+1]);
}
};
- void morphology(const BasicImage<byte>& in, const
std::vector<ImageRef>& selem, const Morphology::Median<byte>& m,
BasicImage<byte>& out)
+ void morphology(const SubImage<byte>& in, const std::vector<ImageRef>&
selem, const Morphology::Median<byte>& m, SubImage<byte>& out)
{
//If we happen to be given a 3x3 square, then perform
//median filtering using the hand coded functions.
Index: cvd/tensor_voting.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/tensor_voting.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- cvd/tensor_voting.h 12 Nov 2010 01:08:19 -0000 1.9
+++ cvd/tensor_voting.h 12 Nov 2010 14:07:31 -0000 1.10
@@ -77,7 +77,7 @@
@param num_divs The voting kernels are quantized by angle in to this
many dicisions in the half-circle.
@ingroup gVision
**/
- template<class C> Image<TooN::Matrix<2> >
dense_tensor_vote_gradients(const BasicImage<C>& image, double sigma, double
ratio, double cutoff=0.001, unsigned int num_divs = 4096)
+ template<class C> Image<TooN::Matrix<2> >
dense_tensor_vote_gradients(const SubImage<C>& image, double sigma, double
ratio, double cutoff=0.001, unsigned int num_divs = 4096)
{
using TooN::Matrix;
using std::pair;
@@ -168,7 +168,7 @@
#ifdef CVD_EXPERIMENTAL
- template<class C> Image<TooN::Matrix<2> >
dense_tensor_vote_gradients_fast(const BasicImage<C>& image, double sigma,
double ratio, double cutoff=0.001, int num_divs = 4096)
+ template<class C> Image<TooN::Matrix<2> >
dense_tensor_vote_gradients_fast(const SubImage<C>& image, double sigma, double
ratio, double cutoff=0.001, int num_divs = 4096)
{
using TooN::Matrix;
using std::pair;
Index: cvd/utility.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/utility.h,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- cvd/utility.h 12 Nov 2010 01:08:19 -0000 1.14
+++ cvd/utility.h 12 Nov 2010 14:07:31 -0000 1.15
@@ -102,7 +102,7 @@
/// @param pix Fill value
/// @param w border width
/// @ingroup gUtility
- template<class T> void fillBorders(BasicImage<T>& im, const T pix, int w=1)
+ template<class T> void fillBorders(SubImage<T>& im, const T pix, int w=1)
{
//Fill the top and bottom
for(int n=0; n < w; n++)
Index: cvd/videoframe.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/videoframe.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- cvd/videoframe.h 12 Nov 2010 01:08:19 -0000 1.11
+++ cvd/videoframe.h 12 Nov 2010 14:07:31 -0000 1.12
@@ -59,7 +59,7 @@
/// @param data The image data for this frame
/// @param size The size of this video frame
VideoFrame(double t, T* data, const ImageRef& size,
VideoFrameFlags::FieldType f=VideoFrameFlags::Unknown)
- :BasicImage<T>(data, size, size.x),
my_field(f),my_timestamp(t)
+ :BasicImage<T>(data, size),my_field(f),my_timestamp(t)
{
}
Index: cvd/vision.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/vision.h,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -b -r1.36 -r1.37
--- cvd/vision.h 12 Nov 2010 01:08:19 -0000 1.36
+++ cvd/vision.h 12 Nov 2010 14:07:31 -0000 1.37
@@ -44,7 +44,7 @@
@throw IncompatibleImageSizes if out does not have the correct dimensions.
@ingroup gVision
*/
-template<class C> void twoThirdsSample(const BasicImage<C>& in, BasicImage<C>&
out)
+template<class C> void twoThirdsSample(const SubImage<C>& in, SubImage<C>& out)
{
typedef typename Pixel::traits<C>::wider_type sum_type;
if( (in.size()/3*2) != out.size())
@@ -73,7 +73,7 @@
/**
@overload
*/
-void twoThirdsSample(const BasicImage<byte>& in, BasicImage<byte>& out);
+void twoThirdsSample(const SubImage<byte>& in, SubImage<byte>& out);
#ifndef DOXYGEN_IGNORE_INTERNAL
namespace Internal
@@ -81,11 +81,11 @@
template<class C> class twoThirdsSampler{};
template<class C> struct ImagePromise<twoThirdsSampler<C> >
{
- ImagePromise(const BasicImage<C>& im)
+ ImagePromise(const SubImage<C>& im)
:i(im)
{}
- const BasicImage<C>& i;
+ const SubImage<C>& i;
template<class D> void execute(Image<D>& j)
{
j.resize(i.size()/3*2);
@@ -93,7 +93,7 @@
}
};
};
- template<class C> Internal::ImagePromise<Internal::twoThirdsSampler<C> >
twoThirdsSample(const BasicImage<C>& c)
+ template<class C> Internal::ImagePromise<Internal::twoThirdsSampler<C> >
twoThirdsSample(const SubImage<C>& c)
{
return Internal::ImagePromise<Internal::twoThirdsSampler<C> >(c);
}
@@ -105,7 +105,7 @@
/// @param from The image to convert from
/// @return The converted image
/// @ingroup gVision
- template<class C> Image<C> twoThirdsSample(const BasicImage<C>& from);
+ template<class C> Image<C> twoThirdsSample(const SubImage<C>& from);
#endif
@@ -238,20 +238,6 @@
typedef typename Pixel::traits<SComp>::wider_type diff_type;
static void gradient(const BasicImage<S>& I, BasicImage<T>& grad) {
int w = I.size().x;
- int h = I.size().y;
- int s = I.row_stride();
- for(int y=1; y<h-1; y++) {
- const S* sptr = I.data()+y*I.row_stride();
- T* tptr = grad.data()+y*grad.row_stride();
- for(int x=1; x<w-1; x++) {
- Pixel::Component<T>::get(*tptr, 0) =
Pixel::scalar_convert<TComp,SComp,diff_type>(diff_type(*(sptr+1)) - *(sptr-1));
- Pixel::Component<T>::get(*tptr, 1) =
Pixel::scalar_convert<TComp,SComp,diff_type>(diff_type(*(sptr+s)) - *(sptr-s));
- sptr++;
- tptr++;
- }
- }
-
-#if 0
typename BasicImage<S>::const_iterator s = I.begin() + w + 1;
typename BasicImage<S>::const_iterator end = I.end() - w - 1;
typename BasicImage<T>::iterator t = grad.begin() + w + 1;
@@ -261,7 +247,6 @@
s++;
t++;
}
-#endif
zeroBorders(grad);
}
};
@@ -514,7 +499,7 @@
}
}
- template <class T> void median_filter_3x3(const BasicImage<T>& I,
BasicImage<T> out)
+ template <class T> void median_filter_3x3(const SubImage<T>& I,
SubImage<T> out)
{
assert(out.size() == I.size());
const int s = I.row_stride();
@@ -523,7 +508,7 @@
median::median_filter_3x3(I[i]+1, s, n, out[i]+1);
}
-void median_filter_3x3(const BasicImage<byte>& I, BasicImage<byte> out);
+void median_filter_3x3(const SubImage<byte>& I, SubImage<byte> out);
//template<class T>
Index: cvd/internal/load_and_save.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/internal/load_and_save.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- cvd/internal/load_and_save.h 12 Nov 2010 01:08:20 -0000 1.19
+++ cvd/internal/load_and_save.h 12 Nov 2010 14:07:31 -0000 1.20
@@ -182,7 +182,7 @@
// is performed.
template<class PixelType, class DiskPixelType, class
ImageLoader> struct read_and_maybe_process
{
- static void exec(BasicImage<PixelType>& im,
ImageLoader& r)
+ static void exec(SubImage<PixelType>& im, ImageLoader&
r)
{
Image<DiskPixelType>
rowbuf(ImageRef(r.size().x, 1));
@@ -196,7 +196,7 @@
template<class PixelType, class ImageLoader> struct
read_and_maybe_process<PixelType, PixelType, ImageLoader>
{
- static void exec(BasicImage<PixelType>& im,
ImageLoader& r)
+ static void exec(SubImage<PixelType>& im, ImageLoader&
r)
{
for(int row = 0; row < r.size().y; row++)
r.get_raw_pixel_line(im[row]);
@@ -301,7 +301,7 @@
//
template<class Pixel, class ImageWriter, class OutgoingPixel>
struct maybe_process_and_write
{
- static void write(std::ostream& os, const
BasicImage<Pixel>& im, const std::map<std::string, Parameter<> >& p)
+ static void write(std::ostream& os, const
SubImage<Pixel>& im, const std::map<std::string, Parameter<> >& p)
{
ImageWriter w(os, im.size(),
CVD::PNM::type_name<OutgoingPixel>::name(), p);
Image<OutgoingPixel> row(ImageRef(im.size().x,
1));
@@ -316,7 +316,7 @@
template<class Pixel, class ImageWriter> struct
maybe_process_and_write<Pixel, ImageWriter, Pixel>
{
- static void write(std::ostream& os, const
BasicImage<Pixel>& im, const std::map<std::string, Parameter<> >& p)
+ static void write(std::ostream& os, const
SubImage<Pixel>& im, const std::map<std::string, Parameter<> >& p)
{
ImageWriter w(os, im.size(),
CVD::PNM::type_name<Pixel>::name(), p);
for(int r=0; r < im.size().y; r++)
@@ -324,7 +324,7 @@
}
};
- template<class Pixel, class Writer> void writeImage(const
BasicImage<Pixel>& im, std::ostream& o, const std::map<std::string, Parameter<>
>& p)
+ template<class Pixel, class Writer> void writeImage(const
SubImage<Pixel>& im, std::ostream& o, const std::map<std::string, Parameter<>
>& p)
{
maybe_process_and_write<Pixel, Writer, typename
Writer::template Outgoing<Pixel>::type>::write(o, im, p);
}
Index: cvd_src/convolution.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/convolution.cc,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- cvd_src/convolution.cc 12 Nov 2010 01:08:21 -0000 1.9
+++ cvd_src/convolution.cc 12 Nov 2010 14:07:31 -0000 1.10
@@ -212,7 +212,7 @@
// See "Recursive Gaussian Derivative Filters", by van Vliet, Young and
Verbeck, 1998
// and "Boundary Conditions for Young - van Vliet Recursive Filtering", by
Triggs and Sdika, 2005
// Can result in values just outside of the input range
-void van_vliet_blur(const double b[], const CVD::BasicImage<float> in,
CVD::BasicImage<float> out)
+void van_vliet_blur(const double b[], const CVD::SubImage<float> in,
CVD::SubImage<float> out)
{
assert(in.size() == out.size());
const int w = in.size().x;
Index: cvd_src/SSE2/two_thirds_sample.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/SSE2/two_thirds_sample.cc,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- cvd_src/SSE2/two_thirds_sample.cc 12 Nov 2010 01:08:21 -0000 1.2
+++ cvd_src/SSE2/two_thirds_sample.cc 12 Nov 2010 14:07:32 -0000 1.3
@@ -289,7 +289,7 @@
}
- void twoThirdsSample(const BasicImage<byte>& in, BasicImage<byte>& out)
+ void twoThirdsSample(const SubImage<byte>& in, SubImage<byte>& out)
{
if( (in.size()/3*2) != out.size())
throw
Exceptions::Vision::IncompatibleImageSizes(__FUNCTION__);
Index: cvd_src/fast/fast_10_detect.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_10_detect.cxx,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/fast/fast_10_detect.cxx 12 Nov 2010 01:08:20 -0000 1.3
+++ cvd_src/fast/fast_10_detect.cxx 12 Nov 2010 14:07:32 -0000 1.4
@@ -7,7 +7,7 @@
using namespace std;
namespace CVD
{
-void fast_corner_detect_plain_10(const BasicImage<byte>& i, vector<ImageRef>&
corners, int b)
+void fast_corner_detect_plain_10(const SubImage<byte>& i, vector<ImageRef>&
corners, int b)
{
int y, cb, c_b;
const byte *line_max, *line_min;
Index: cvd_src/fast/fast_10_score.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_10_score.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- cvd_src/fast/fast_10_score.cxx 12 Nov 2010 01:08:19 -0000 1.4
+++ cvd_src/fast/fast_10_score.cxx 12 Nov 2010 14:07:32 -0000 1.5
@@ -3150,7 +3150,7 @@
return b-1;
}
-void fast_corner_score_10(const BasicImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
+void fast_corner_score_10(const SubImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
{
scores.resize(corners.size());
int pixel[16] = {
Index: cvd_src/fast/fast_11_detect.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_11_detect.cxx,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/fast/fast_11_detect.cxx 12 Nov 2010 01:08:20 -0000 1.3
+++ cvd_src/fast/fast_11_detect.cxx 12 Nov 2010 14:07:32 -0000 1.4
@@ -7,7 +7,7 @@
using namespace std;
namespace CVD
{
-void fast_corner_detect_plain_11(const BasicImage<byte>& i, vector<ImageRef>&
corners, int b)
+void fast_corner_detect_plain_11(const SubImage<byte>& i, vector<ImageRef>&
corners, int b)
{
int y, cb, c_b;
const byte *line_max, *line_min;
Index: cvd_src/fast/fast_11_score.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_11_score.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- cvd_src/fast/fast_11_score.cxx 12 Nov 2010 01:08:20 -0000 1.4
+++ cvd_src/fast/fast_11_score.cxx 12 Nov 2010 14:07:32 -0000 1.5
@@ -2573,7 +2573,7 @@
return b-1;
}
-void fast_corner_score_11(const BasicImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
+void fast_corner_score_11(const SubImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
{
scores.resize(corners.size());
int pixel[16] = {
Index: cvd_src/fast/fast_12_detect.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_12_detect.cxx,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/fast/fast_12_detect.cxx 12 Nov 2010 01:08:20 -0000 1.3
+++ cvd_src/fast/fast_12_detect.cxx 12 Nov 2010 14:07:32 -0000 1.4
@@ -7,7 +7,7 @@
using namespace std;
namespace CVD
{
-void fast_corner_detect_plain_12(const BasicImage<byte>& i, vector<ImageRef>&
corners, int b)
+void fast_corner_detect_plain_12(const SubImage<byte>& i, vector<ImageRef>&
corners, int b)
{
int y, cb, c_b;
const byte *line_max, *line_min;
Index: cvd_src/fast/fast_12_score.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_12_score.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- cvd_src/fast/fast_12_score.cxx 12 Nov 2010 01:08:19 -0000 1.4
+++ cvd_src/fast/fast_12_score.cxx 12 Nov 2010 14:07:32 -0000 1.5
@@ -2245,7 +2245,7 @@
return b-1;
}
-void fast_corner_score_12(const BasicImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
+void fast_corner_score_12(const SubImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
{
scores.resize(corners.size());
int pixel[16] = {
Index: cvd_src/fast/fast_7_detect.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_7_detect.cxx,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/fast/fast_7_detect.cxx 12 Nov 2010 01:08:19 -0000 1.3
+++ cvd_src/fast/fast_7_detect.cxx 12 Nov 2010 14:07:32 -0000 1.4
@@ -7,7 +7,7 @@
using namespace std;
namespace CVD
{
-void fast_corner_detect_plain_7(const BasicImage<byte>& i, vector<ImageRef>&
corners, int b)
+void fast_corner_detect_plain_7(const SubImage<byte>& i, vector<ImageRef>&
corners, int b)
{
int y, cb, c_b;
const byte *line_max, *line_min;
Index: cvd_src/fast/fast_7_score.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_7_score.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- cvd_src/fast/fast_7_score.cxx 12 Nov 2010 01:08:20 -0000 1.4
+++ cvd_src/fast/fast_7_score.cxx 12 Nov 2010 14:07:32 -0000 1.5
@@ -16037,7 +16037,7 @@
return b-1;
}
-void fast_corner_score_7(const BasicImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
+void fast_corner_score_7(const SubImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
{
scores.resize(corners.size());
int pixel[16] = {
Index: cvd_src/fast/fast_8_detect.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_8_detect.cxx,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/fast/fast_8_detect.cxx 12 Nov 2010 01:08:20 -0000 1.3
+++ cvd_src/fast/fast_8_detect.cxx 12 Nov 2010 14:07:32 -0000 1.4
@@ -7,7 +7,7 @@
using namespace std;
namespace CVD
{
-void fast_corner_detect_plain_8(const BasicImage<byte>& i, vector<ImageRef>&
corners, int b)
+void fast_corner_detect_plain_8(const SubImage<byte>& i, vector<ImageRef>&
corners, int b)
{
int y, cb, c_b;
const byte *line_max, *line_min;
Index: cvd_src/fast/fast_8_score.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_8_score.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- cvd_src/fast/fast_8_score.cxx 12 Nov 2010 01:08:19 -0000 1.4
+++ cvd_src/fast/fast_8_score.cxx 12 Nov 2010 14:07:32 -0000 1.5
@@ -8415,7 +8415,7 @@
return b-1;
}
-void fast_corner_score_8(const BasicImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
+void fast_corner_score_8(const SubImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
{
scores.resize(corners.size());
int pixel[16] = {
Index: cvd_src/fast/fast_9_detect.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_9_detect.cxx,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/fast/fast_9_detect.cxx 12 Nov 2010 01:08:19 -0000 1.3
+++ cvd_src/fast/fast_9_detect.cxx 12 Nov 2010 14:07:32 -0000 1.4
@@ -7,7 +7,7 @@
using namespace std;
namespace CVD
{
-void fast_corner_detect_plain_9(const BasicImage<byte>& i, vector<ImageRef>&
corners, int b)
+void fast_corner_detect_plain_9(const SubImage<byte>& i, vector<ImageRef>&
corners, int b)
{
int y, cb, c_b;
const byte *line_max, *line_min;
Index: cvd_src/fast/fast_9_score.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/fast_9_score.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- cvd_src/fast/fast_9_score.cxx 12 Nov 2010 01:08:20 -0000 1.4
+++ cvd_src/fast/fast_9_score.cxx 12 Nov 2010 14:07:32 -0000 1.5
@@ -4652,7 +4652,7 @@
return b-1;
}
-void fast_corner_score_9(const BasicImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
+void fast_corner_score_9(const SubImage<byte>& i, const vector<ImageRef>&
corners, int b, vector<int>& scores)
{
scores.resize(corners.size());
int pixel[16] = {
Index: cvd_src/fast/prototypes.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/fast/prototypes.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/fast/prototypes.h 12 Nov 2010 01:08:19 -0000 1.3
+++ cvd_src/fast/prototypes.h 12 Nov 2010 14:07:32 -0000 1.4
@@ -3,11 +3,11 @@
namespace CVD
{
using namespace std;
- void fast_corner_detect_plain_7(const BasicImage<byte>& i,
std::vector<ImageRef>& corners, int b);
- void fast_corner_detect_plain_8(const BasicImage<byte>& i,
std::vector<ImageRef>& corners, int b);
- void fast_corner_detect_plain_9(const BasicImage<byte>& i,
std::vector<ImageRef>& corners, int b);
- void fast_corner_detect_plain_10(const BasicImage<byte>& i,
std::vector<ImageRef>& corners, int b);
- void fast_corner_detect_plain_11(const BasicImage<byte>& i,
std::vector<ImageRef>& corners, int b);
- void fast_corner_detect_plain_12(const BasicImage<byte>& i,
std::vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_7(const SubImage<byte>& i,
std::vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_8(const SubImage<byte>& i,
std::vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_9(const SubImage<byte>& i,
std::vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_10(const SubImage<byte>& i,
std::vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_11(const SubImage<byte>& i,
std::vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_12(const SubImage<byte>& i,
std::vector<ImageRef>& corners, int b);
}
Index: cvd_src/i686/convert_rgb_to_y.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/i686/convert_rgb_to_y.cc,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/i686/convert_rgb_to_y.cc 12 Nov 2010 01:08:20 -0000 1.3
+++ cvd_src/i686/convert_rgb_to_y.cc 12 Nov 2010 14:07:32 -0000 1.4
@@ -11,7 +11,7 @@
}
}
- void ConvertImage<Rgb<byte>, byte, Pixel::CIE<Rgb<byte>, byte>,
1>::convert(const BasicImage<Rgb<byte> >& from, BasicImage<byte>& to)
+ void ConvertImage<Rgb<byte>, byte, Pixel::CIE<Rgb<byte>, byte>,
1>::convert(const SubImage<Rgb<byte> >& from, SubImage<byte>& to)
{
const Rgb<byte>* rgb = from.data();
byte* gray = to.data();
Index: cvd_src/i686/convolve_gaussian.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/i686/convolve_gaussian.cc,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- cvd_src/i686/convolve_gaussian.cc 12 Nov 2010 01:08:20 -0000 1.7
+++ cvd_src/i686/convolve_gaussian.cc 12 Nov 2010 14:07:32 -0000 1.8
@@ -247,7 +247,7 @@
// See "Recursive Gaussian Derivative Filters", by van Vliet, Young and
Verbeck, 1998
// and "Boundary Conditions for Young - van Vliet Recursive Filtering", by
Triggs and Sdika, 2005
// This can produce output with values slightly outside the input range.
-void van_vliet_blur_simd(const double b[], const BasicImage<float> in,
BasicImage<float> out)
+void van_vliet_blur_simd(const double b[], const SubImage<float> in,
SubImage<float> out)
{
assert(in.size() == out.size());
const int w = in.size().x;
Index: cvd_src/i686/median_3x3.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/i686/median_3x3.cc,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- cvd_src/i686/median_3x3.cc 12 Nov 2010 01:08:20 -0000 1.2
+++ cvd_src/i686/median_3x3.cc 12 Nov 2010 14:07:32 -0000 1.3
@@ -63,7 +63,7 @@
}
- void median_filter_3x3(const BasicImage<byte>& I, BasicImage<byte> out)
+ void median_filter_3x3(const SubImage<byte>& I, SubImage<byte> out)
{
assert(out.size() == I.size());
const int s = I.row_stride();
Index: cvd_src/noarch/convert_rgb_to_y.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/noarch/convert_rgb_to_y.cc,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- cvd_src/noarch/convert_rgb_to_y.cc 12 Nov 2010 01:08:20 -0000 1.3
+++ cvd_src/noarch/convert_rgb_to_y.cc 12 Nov 2010 14:07:32 -0000 1.4
@@ -3,7 +3,7 @@
#include <cvd/utility.h>
namespace CVD {
- void ConvertImage<Rgb<byte>, byte, Pixel::CIE<Rgb<byte>, byte>,
1>::convert(const BasicImage<Rgb<byte> >& from, BasicImage<byte>& to)
+ void ConvertImage<Rgb<byte>, byte, Pixel::CIE<Rgb<byte>, byte>,
1>::convert(const SubImage<Rgb<byte> >& from, SubImage<byte>& to)
{
const Rgb<byte>* rgb = from.data();
byte* gray = to.data(), *gend = to.data() + to.totalsize();
Index: cvd_src/noarch/median_3x3.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/noarch/median_3x3.cc,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- cvd_src/noarch/median_3x3.cc 12 Nov 2010 01:08:20 -0000 1.2
+++ cvd_src/noarch/median_3x3.cc 12 Nov 2010 14:07:32 -0000 1.3
@@ -1,7 +1,7 @@
#include "cvd/vision.h"
namespace CVD{
- void median_filter_3x3(const BasicImage<byte>& I, BasicImage<byte> out)
+ void median_filter_3x3(const SubImage<byte>& I, SubImage<byte> out)
{
median_filter_3x3<byte>(I, out);
}
Index: cvd_src/noarch/two_thirds_sample.cc
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd_src/noarch/two_thirds_sample.cc,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- cvd_src/noarch/two_thirds_sample.cc 12 Nov 2010 01:08:20 -0000 1.2
+++ cvd_src/noarch/two_thirds_sample.cc 12 Nov 2010 14:07:32 -0000 1.3
@@ -1,6 +1,6 @@
#include "cvd/vision.h"
namespace CVD{
- void twoThirdsSample(const BasicImage<byte>& in, BasicImage<byte>& out)
+ void twoThirdsSample(const SubImage<byte>& in, SubImage<byte>& out)
{
twoThirdsSample<byte>(in, out);
}
Index: test/bayer_test.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/test/bayer_test.cxx,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- test/bayer_test.cxx 12 Nov 2010 01:08:21 -0000 1.2
+++ test/bayer_test.cxx 12 Nov 2010 14:07:32 -0000 1.3
@@ -12,13 +12,13 @@
using namespace CVD;
template <typename T>
-Image<T> create_bayer( const ImageRef & size, const BasicImage<byte> & pattern
){
+Image<T> create_bayer( const ImageRef & size, const SubImage<byte> & pattern ){
assert(pattern.size() == ImageRef(2,2));
Image<T> result(size);
for( int y = 0; y < size.y; y += 2 ){
for(int x = 0; x < size.x; x +=2 ){
- BasicImage<T> sub = result.sub_image(ImageRef(x,y), ImageRef(2,2));
- reinterpret_cast<BasicImage<byte> &>(sub).copy_from(pattern);
+ SubImage<T> sub = result.sub_image(ImageRef(x,y), ImageRef(2,2));
+ reinterpret_cast<SubImage<byte> &>(sub).copy_from(pattern);
}
}
return result;
Index: test/fast_test.cxx
===================================================================
RCS file: /cvsroot/libcvd/libcvd/test/fast_test.cxx,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- test/fast_test.cxx 12 Nov 2010 01:08:21 -0000 1.4
+++ test/fast_test.cxx 12 Nov 2010 14:07:32 -0000 1.5
@@ -11,9 +11,9 @@
using namespace std;
namespace CVD
{
- void fast_corner_detect_plain_9(const BasicImage<byte>& i,
vector<ImageRef>& corners, int b);
- void fast_corner_detect_plain_10(const BasicImage<byte>& i,
vector<ImageRef>& corners, int b);
- void fast_corner_detect_plain_12(const BasicImage<byte>& i,
vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_9(const SubImage<byte>& i,
vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_10(const SubImage<byte>& i,
vector<ImageRef>& corners, int b);
+ void fast_corner_detect_plain_12(const SubImage<byte>& i,
vector<ImageRef>& corners, int b);
}
using namespace CVD;
@@ -29,7 +29,7 @@
}
template<int num_for_corner, class Test>
-inline int is_corner(const BasicImage<byte>& im, const ImageRef off, int
barrier, const Test& test)
+inline int is_corner(const SubImage<byte>& im, const ImageRef off, int
barrier, const Test& test)
{
int num_consecutive=0;
int first_cons=0;
@@ -57,7 +57,7 @@
return first_cons+num_consecutive >=num_for_corner;
}
-template<int Num> void segment_test(const BasicImage<byte>& im,
vector<ImageRef>& v, int threshold)
+template<int Num> void segment_test(const SubImage<byte>& im,
vector<ImageRef>& v, int threshold)
{
for(int y=3; y < im.size().y-3; y++)
for(int x=3; x < im.size().x-3; x++)
@@ -151,7 +151,7 @@
ImageRef size = im.size() - i * one;
Image<byte> part(size);
- BasicImage<byte> s = im.sub_image(zero, size);
+ SubImage<byte> s = im.sub_image(zero, size);
copy(s.begin(), s.end(),part.begin());
test(part, funcf, funcp, funcs, threshold);
Index: .cproject
===================================================================
RCS file: .cproject
diff -N .cproject
--- .cproject 12 Nov 2010 01:08:20 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,210 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?fileVersion 4.0.0?>
-
-<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
- <storageModule moduleId="org.eclipse.cdt.core.settings">
- <cconfiguration id="0.132986640">
- <storageModule
buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider"
id="0.132986640" moduleId="org.eclipse.cdt.core.settings" name="Default">
- <externalSettings/>
- <extensions>
- <extension
id="org.eclipse.cdt.core.VCErrorParser"
point="org.eclipse.cdt.core.ErrorParser"/>
- <extension
id="org.eclipse.cdt.core.GmakeErrorParser"
point="org.eclipse.cdt.core.ErrorParser"/>
- <extension
id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
- <extension
id="org.eclipse.cdt.core.GCCErrorParser"
point="org.eclipse.cdt.core.ErrorParser"/>
- <extension
id="org.eclipse.cdt.core.GASErrorParser"
point="org.eclipse.cdt.core.ErrorParser"/>
- <extension
id="org.eclipse.cdt.core.GLDErrorParser"
point="org.eclipse.cdt.core.ErrorParser"/>
- </extensions>
- </storageModule>
- <storageModule moduleId="cdtBuildSystem"
version="4.0.0">
- <configuration buildProperties=""
description="" id="0.132986640" name="Default"
parent="org.eclipse.cdt.build.core.prefbase.cfg">
- <folderInfo id="0.132986640." name="/"
resourcePath="">
- <toolChain
id="org.eclipse.cdt.build.core.prefbase.toolchain.961750006" name="No
ToolChain" resourceTypeBasedDiscovery="false"
superClass="org.eclipse.cdt.build.core.prefbase.toolchain">
- <targetPlatform
id="org.eclipse.cdt.build.core.prefbase.toolchain.961750006.787203814" name=""/>
- <builder
id="org.eclipse.cdt.build.core.settings.default.builder.586101384"
keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make
Builder" superClass="org.eclipse.cdt.build.core.settings.default.builder"/>
- <tool
id="org.eclipse.cdt.build.core.settings.holder.libs.475311302" name="holder for
library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>
- <tool
id="org.eclipse.cdt.build.core.settings.holder.1479259644" name="Assembly"
superClass="org.eclipse.cdt.build.core.settings.holder">
- <inputType
id="org.eclipse.cdt.build.core.settings.holder.inType.1820441539"
languageId="org.eclipse.cdt.core.assembly" languageName="Assembly"
sourceContentType="org.eclipse.cdt.core.asmSource"
superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
- </tool>
- <tool
id="org.eclipse.cdt.build.core.settings.holder.672760169" name="GNU C++"
superClass="org.eclipse.cdt.build.core.settings.holder">
- <inputType
id="org.eclipse.cdt.build.core.settings.holder.inType.198207907"
languageId="org.eclipse.cdt.core.g++" languageName="GNU C++"
sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader"
superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
- </tool>
- <tool
id="org.eclipse.cdt.build.core.settings.holder.1071490753" name="GNU C"
superClass="org.eclipse.cdt.build.core.settings.holder">
- <inputType
id="org.eclipse.cdt.build.core.settings.holder.inType.1076580741"
languageId="org.eclipse.cdt.core.gcc" languageName="GNU C"
sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader"
superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
- </tool>
- </toolChain>
- </folderInfo>
- </configuration>
- </storageModule>
- <storageModule moduleId="scannerConfiguration">
- <autodiscovery enabled="true"
problemReportingEnabled="true" selectedProfileId=""/>
- <profile
id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider id="specsFile">
- <runAction arguments="-E -P -v
-dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="makefileGenerator">
- <runAction arguments="-E -P -v
-dD" command="" useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider id="specsFile">
- <runAction arguments="-E -P -v
-dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider id="specsFile">
- <runAction arguments="-E -P -v
-dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider id="specsFile">
- <runAction arguments="-E -P -v
-dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider id="specsFile">
- <runAction arguments="-c 'gcc
-E -P -v -dD "${plugin_state_location}/${specs_file}"'" command="sh"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider id="specsFile">
- <runAction arguments="-c 'g++
-E -P -v -dD "${plugin_state_location}/specs.cpp"'" command="sh"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
- <buildOutputProvider>
- <openAction enabled="true"
filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider id="specsFile">
- <runAction arguments="-c 'gcc
-E -P -v -dD "${plugin_state_location}/specs.c"'" command="sh"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <scannerConfigBuildInfo
instanceId="0.132986640">
- <autodiscovery enabled="true"
problemReportingEnabled="true" selectedProfileId=""/>
- <profile
id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="specsFile">
- <runAction
arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="makefileGenerator">
- <runAction
arguments="-E -P -v -dD" command="" useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="specsFile">
- <runAction
arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="specsFile">
- <runAction
arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="specsFile">
- <runAction
arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="specsFile">
- <runAction
arguments="-c 'gcc -E -P -v -dD
"${plugin_state_location}/${specs_file}"'" command="sh"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="specsFile">
- <runAction
arguments="-c 'g++ -E -P -v -dD
"${plugin_state_location}/specs.cpp"'" command="sh"
useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- <profile
id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
- <buildOutputProvider>
- <openAction
enabled="true" filePath=""/>
- <parser enabled="true"/>
- </buildOutputProvider>
- <scannerInfoProvider
id="specsFile">
- <runAction
arguments="-c 'gcc -E -P -v -dD "${plugin_state_location}/specs.c"'"
command="sh" useDefault="true"/>
- <parser enabled="true"/>
- </scannerInfoProvider>
- </profile>
- </scannerConfigBuildInfo>
- </storageModule>
- <storageModule
moduleId="org.eclipse.cdt.core.externalSettings"/>
- </cconfiguration>
- </storageModule>
- <storageModule moduleId="cdtBuildSystem" version="4.0.0">
- <project id="libcvd.null.232535217" name="libcvd"/>
- </storageModule>
-</cproject>
Index: .cvsignore
===================================================================
RCS file: .cvsignore
diff -N .cvsignore
--- .cvsignore 12 Nov 2010 01:08:20 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
-config.dep_progs
-config.dep_testprogs
-config.dep_tmp
-config.have_bits
-config.status
-Makefile
-libcvd_debug.a
-libcvd.a
-.sourcefiles
-.deps
-debug
Index: .project
===================================================================
RCS file: .project
diff -N .project
--- .project 12 Nov 2010 01:08:20 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>libcvd</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
-
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
- <triggers>clean,full,incremental,</triggers>
- <arguments>
- <dictionary>
- <key>?name?</key>
- <value></value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.append_environment</key>
- <value>true</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
- <value>all</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.buildArguments</key>
- <value></value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.buildCommand</key>
- <value>make</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
- <value>clean</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.contents</key>
-
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
- <value>false</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
- <value>true</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
- <value>true</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
- <value>all</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.stopOnError</key>
- <value>true</value>
- </dictionary>
- <dictionary>
-
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
- <value>true</value>
- </dictionary>
- </arguments>
- </buildCommand>
- <buildCommand>
-
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
- <triggers>full,incremental,</triggers>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.cdt.core.cnature</nature>
- <nature>org.eclipse.cdt.core.ccnature</nature>
-
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
-
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
- </natures>
-</projectDescription>
Index: cvd/config.h
===================================================================
RCS file: cvd/config.h
diff -N cvd/config.h
--- cvd/config.h 12 Nov 2010 01:08:19 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,60 +0,0 @@
-#ifndef CVD_CONFIG_H
-#define CVD_CONFIG_H
-#define CVD_ARCH_LITTLE_ENDIAN 1
-#ifndef CVD_DISABLE_CPU_i386
- #define CVD_HAVE_CPU_i386 1
-#endif
-#ifndef CVD_DISABLE_GLOB
- #define CVD_HAVE_GLOB 1
-#endif
-#ifndef CVD_DISABLE_INLINE_ASM
- #define CVD_HAVE_INLINE_ASM 1
-#endif
-#ifndef CVD_DISABLE_LAPACK
- #define CVD_HAVE_LAPACK 1
-#endif
-#ifndef CVD_DISABLE_MEMALIGN
- #define CVD_HAVE_MEMALIGN 1
-#endif
-#ifndef CVD_DISABLE_MMX
- #define CVD_HAVE_MMX 1
-#endif
-#ifndef CVD_DISABLE_MMXEXT
- #define CVD_HAVE_MMXEXT 1
-#endif
-#ifndef CVD_DISABLE_PNG
- #define CVD_HAVE_PNG 1
-#endif
-#ifndef CVD_DISABLE_PTHREAD
- #define CVD_HAVE_PTHREAD 1
-#endif
-#ifndef CVD_DISABLE_PTHREAD_YIELD_NP
- #define CVD_HAVE_PTHREAD_YIELD_NP 1
-#endif
-#ifndef CVD_DISABLE_SSE
- #define CVD_HAVE_SSE 1
-#endif
-#ifndef CVD_DISABLE_SSE2
- #define CVD_HAVE_SSE2 1
-#endif
-#ifndef CVD_DISABLE_SSE3
- #define CVD_HAVE_SSE3 1
-#endif
-#ifndef CVD_DISABLE_TOON
- #define CVD_HAVE_TOON 1
-#endif
-#ifndef CVD_DISABLE_TR1_SHARED_PTR
- #define CVD_HAVE_TR1_SHARED_PTR 1
-#endif
-#ifndef CVD_DISABLE_VIDEODISPLAY
- #define CVD_HAVE_VIDEODISPLAY 1
-#endif
-#ifndef CVD_DISABLE_HALFSAMPLE_SSE16
- #define CVD_INTERNAL_HAVE_HALFSAMPLE_SSE16 1
-#endif
-#ifndef CVD_DISABLE_YV402P_MMX
- #define CVD_INTERNAL_HAVE_YV402P_MMX 1
-#endif
-#define CVD_MAJOR_VERSION 0
-#define CVD_MINOR_VERSION 8
-#endif
Index: progs/.cvsignore
===================================================================
RCS file: progs/.cvsignore
diff -N progs/.cvsignore
--- progs/.cvsignore 12 Nov 2010 01:08:19 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
-calibrate
-cvd_display_image
-img_play
-img_play_bw
-img_play_deinterlace
-se3_exp
-se3_inv
-se3_ln
-se3_post_mul
-se3_pre_mul
-video_play_source
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [libcvd-members] libcvd cvd/convolution.h cvd/draw.h cvd/fast_co...,
Edward Rosten <=