Commit c91b0e7a authored by Vadim Pisarevsky's avatar Vadim Pisarevsky

Merge pull request #3217 from avdmitry:samples_cpp_data

parents 46ac0048 71348651
...@@ -126,7 +126,7 @@ In this sample I'll show how to calculate and show the *magnitude* image of a Fo ...@@ -126,7 +126,7 @@ In this sample I'll show how to calculate and show the *magnitude* image of a Fo
Result Result
====== ======
An application idea would be to determine the geometrical orientation present in the image. For example, let us find out if a text is horizontal or not? Looking at some text you'll notice that the text lines sort of form also horizontal lines and the letters form sort of vertical lines. These two main components of a text snippet may be also seen in case of the Fourier transform. Let us use :download:`this horizontal <../../../../samples/cpp/tutorial_code/images/imageTextN.png>` and :download:`this rotated<../../../../samples/cpp/tutorial_code/images/imageTextR.png>` image about a text. An application idea would be to determine the geometrical orientation present in the image. For example, let us find out if a text is horizontal or not? Looking at some text you'll notice that the text lines sort of form also horizontal lines and the letters form sort of vertical lines. These two main components of a text snippet may be also seen in case of the Fourier transform. Let us use :download:`this horizontal <../../../../samples/data/imageTextN.png>` and :download:`this rotated<../../../../samples/data/imageTextR.png>` image about a text.
In case of the horizontal text: In case of the horizontal text:
......
...@@ -39,28 +39,28 @@ You'll almost always end up using the: ...@@ -39,28 +39,28 @@ You'll almost always end up using the:
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:tab-width: 4 :tab-width: 4
:lines: 1-4 :lines: 1-6
We also include the *iostream* to facilitate console line output and input. To avoid data structure and function name conflicts with other libraries, OpenCV has its own namespace: *cv*. To avoid the need appending prior each of these the *cv::* keyword you can import the namespace in the whole file by using the lines: We also include the *iostream* to facilitate console line output and input. To avoid data structure and function name conflicts with other libraries, OpenCV has its own namespace: *cv*. To avoid the need appending prior each of these the *cv::* keyword you can import the namespace in the whole file by using the lines:
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:tab-width: 4 :tab-width: 4
:lines: 6-7 :lines: 8-9
This is true for the STL library too (used for console I/O). Now, let's analyze the *main* function. We start up assuring that we acquire a valid image name argument from the command line. This is true for the STL library too (used for console I/O). Now, let's analyze the *main* function. We start up assuring that we acquire a valid image name argument from the command line. Otherwise take a picture by default: "HappyFish.jpg".
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:tab-width: 4 :tab-width: 4
:lines: 11-15 :lines: 13-17
Then create a *Mat* object that will store the data of the loaded image. Then create a *Mat* object that will store the data of the loaded image.
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:tab-width: 4 :tab-width: 4
:lines: 17 :lines: 19
Now we call the :imread:`imread <>` function which loads the image name specified by the first argument (*argv[1]*). The second argument specifies the format in what we want the image. This may be: Now we call the :imread:`imread <>` function which loads the image name specified by the first argument (*argv[1]*). The second argument specifies the format in what we want the image. This may be:
...@@ -73,7 +73,7 @@ Now we call the :imread:`imread <>` function which loads the image name specifie ...@@ -73,7 +73,7 @@ Now we call the :imread:`imread <>` function which loads the image name specifie
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:tab-width: 4 :tab-width: 4
:lines: 18 :lines: 20
.. note:: .. note::
...@@ -88,21 +88,21 @@ After checking that the image data was loaded correctly, we want to display our ...@@ -88,21 +88,21 @@ After checking that the image data was loaded correctly, we want to display our
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:lines: 26 :lines: 28
:tab-width: 4 :tab-width: 4
Finally, to update the content of the OpenCV window with a new image use the :imshow:`imshow <>` function. Specify the OpenCV window name to update and the image to use during this operation: Finally, to update the content of the OpenCV window with a new image use the :imshow:`imshow <>` function. Specify the OpenCV window name to update and the image to use during this operation:
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:lines: 27 :lines: 29
:tab-width: 4 :tab-width: 4
Because we want our window to be displayed until the user presses a key (otherwise the program would end far too quickly), we use the :wait_key:`waitKey <>` function whose only parameter is just how long should it wait for a user input (measured in milliseconds). Zero means to wait forever. Because we want our window to be displayed until the user presses a key (otherwise the program would end far too quickly), we use the :wait_key:`waitKey <>` function whose only parameter is just how long should it wait for a user input (measured in milliseconds). Zero means to wait forever.
.. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp .. literalinclude:: ../../../../samples/cpp/tutorial_code/introduction/display_image/display_image.cpp
:language: cpp :language: cpp
:lines: 29 :lines: 31
:tab-width: 4 :tab-width: 4
Result Result
......
...@@ -160,7 +160,7 @@ You can start a Visual Studio build from two places. Either inside from the *IDE ...@@ -160,7 +160,7 @@ You can start a Visual Studio build from two places. Either inside from the *IDE
.. |voila| unicode:: voil U+00E1 .. |voila| unicode:: voil U+00E1
This is important to remember when you code inside the code open and save commands. You're resources will be saved ( and queried for at opening!!!) relatively to your working directory. This is unless you give a full, explicit path as parameter for the I/O functions. In the code above we open :download:`this OpenCV logo<../../../../samples/cpp/tutorial_code/images/opencv-logo.png>`. Before starting up the application make sure you place the image file in your current working directory. Modify the image file name inside the code to try it out on other images too. Run it and |voila|: This is important to remember when you code inside the code open and save commands. You're resources will be saved ( and queried for at opening!!!) relatively to your working directory. This is unless you give a full, explicit path as parameter for the I/O functions. In the code above we open :download:`this OpenCV logo<../../../../samples/data/opencv-logo.png>`. Before starting up the application make sure you place the image file in your current working directory. Modify the image file name inside the code to try it out on other images too. Run it and |voila|:
.. image:: images/SuccessVisualStudioWindows.jpg .. image:: images/SuccessVisualStudioWindows.jpg
:alt: You should have this. :alt: You should have this.
......
...@@ -23,7 +23,7 @@ const char* keys = ...@@ -23,7 +23,7 @@ const char* keys =
"{c camera | | use camera or not}" "{c camera | | use camera or not}"
"{m method |mog2 | method (knn or mog2) }" "{m method |mog2 | method (knn or mog2) }"
"{s smooth | | smooth the mask }" "{s smooth | | smooth the mask }"
"{fn file_name|tree.avi | movie file }" "{fn file_name|../data/tree.avi | movie file }"
}; };
//this is a sample for foreground detection functions //this is a sample for foreground detection functions
......
...@@ -36,14 +36,14 @@ static void help() ...@@ -36,14 +36,14 @@ static void help()
{ {
cout << "\n This program demonstrates connected components and use of the trackbar\n" cout << "\n This program demonstrates connected components and use of the trackbar\n"
"Usage: \n" "Usage: \n"
" ./connected_components <image(stuff.jpg as default)>\n" " ./connected_components <image(../data/stuff.jpg as default)>\n"
"The image is converted to grayscale and displayed, another image has a trackbar\n" "The image is converted to grayscale and displayed, another image has a trackbar\n"
"that controls thresholding and thereby the extracted contours which are drawn in color\n"; "that controls thresholding and thereby the extracted contours which are drawn in color\n";
} }
const char* keys = const char* keys =
{ {
"{@image|stuff.jpg|image for converting to a grayscale}" "{@image|../data/stuff.jpg|image for converting to a grayscale}"
}; };
int main( int argc, const char** argv ) int main( int argc, const char** argv )
......
...@@ -59,12 +59,12 @@ static void updateBrightnessContrast( int /*arg*/, void* ) ...@@ -59,12 +59,12 @@ static void updateBrightnessContrast( int /*arg*/, void* )
static void help() static void help()
{ {
std::cout << "\nThis program demonstrates the use of calcHist() -- histogram creation.\n" std::cout << "\nThis program demonstrates the use of calcHist() -- histogram creation.\n"
<< "Usage: \n" << "demhist [image_name -- Defaults to baboon.jpg]" << std::endl; << "Usage: \n" << "demhist [image_name -- Defaults to ../data/baboon.jpg]" << std::endl;
} }
const char* keys = const char* keys =
{ {
"{@image|baboon.jpg|input image file}" "{@image|../data/baboon.jpg|input image file}"
}; };
int main( int argc, const char** argv ) int main( int argc, const char** argv )
......
...@@ -14,12 +14,12 @@ static void help() ...@@ -14,12 +14,12 @@ static void help()
printf("\nThis program demonstrated the use of the discrete Fourier transform (dft)\n" printf("\nThis program demonstrated the use of the discrete Fourier transform (dft)\n"
"The dft of an image is taken and it's power spectrum is displayed.\n" "The dft of an image is taken and it's power spectrum is displayed.\n"
"Usage:\n" "Usage:\n"
"./dft [image_name -- default lena.jpg]\n"); "./dft [image_name -- default ../data/lena.jpg]\n");
} }
const char* keys = const char* keys =
{ {
"{@image|lena.jpg|input image file}" "{@image|../data/lena.jpg|input image file}"
}; };
int main(int argc, const char ** argv) int main(int argc, const char ** argv)
......
...@@ -91,7 +91,7 @@ static void help() ...@@ -91,7 +91,7 @@ static void help()
{ {
printf("\nProgram to demonstrate the use of the distance transform function between edge images.\n" printf("\nProgram to demonstrate the use of the distance transform function between edge images.\n"
"Usage:\n" "Usage:\n"
"./distrans [image_name -- default image is stuff.jpg]\n" "./distrans [image_name -- default image is ../data/stuff.jpg]\n"
"\nHot keys: \n" "\nHot keys: \n"
"\tESC - quit the program\n" "\tESC - quit the program\n"
"\tC - use C/Inf metric\n" "\tC - use C/Inf metric\n"
...@@ -107,7 +107,7 @@ static void help() ...@@ -107,7 +107,7 @@ static void help()
const char* keys = const char* keys =
{ {
"{@image |stuff.jpg|input image file}" "{@image |../data/stuff.jpg|input image file}"
}; };
int main( int argc, const char** argv ) int main( int argc, const char** argv )
......
...@@ -28,12 +28,12 @@ static void help() ...@@ -28,12 +28,12 @@ static void help()
{ {
printf("\nThis sample demonstrates Canny edge detection\n" printf("\nThis sample demonstrates Canny edge detection\n"
"Call:\n" "Call:\n"
" /.edge [image_name -- Default is fruits.jpg]\n\n"); " /.edge [image_name -- Default is ../data/fruits.jpg]\n\n");
} }
const char* keys = const char* keys =
{ {
"{@image |fruits.jpg|input image name}" "{@image |../data/fruits.jpg|input image name}"
}; };
int main( int argc, const char** argv ) int main( int argc, const char** argv )
......
...@@ -118,8 +118,8 @@ int main( int argc, const char** argv ) ...@@ -118,8 +118,8 @@ int main( int argc, const char** argv )
} }
else else
{ {
image = imread( "lena.jpg", 1 ); image = imread( "../data/lena.jpg", 1 );
if(image.empty()) cout << "Couldn't read lena.jpg" << endl; if(image.empty()) cout << "Couldn't read ../data/lena.jpg" << endl;
} }
cvNamedWindow( "result", 1 ); cvNamedWindow( "result", 1 );
......
...@@ -12,7 +12,7 @@ static void help() ...@@ -12,7 +12,7 @@ static void help()
{ {
cout << "\nThis program demonstrated the floodFill() function\n" cout << "\nThis program demonstrated the floodFill() function\n"
"Call:\n" "Call:\n"
"./ffilldemo [image_name -- Default: fruits.jpg]\n" << endl; "./ffilldemo [image_name -- Default: ../data/fruits.jpg]\n" << endl;
cout << "Hot keys: \n" cout << "Hot keys: \n"
"\tESC - quit the program\n" "\tESC - quit the program\n"
...@@ -73,7 +73,7 @@ static void onMouse( int event, int x, int y, int, void* ) ...@@ -73,7 +73,7 @@ static void onMouse( int event, int x, int y, int, void* )
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
char* filename = argc >= 2 ? argv[1] : (char*)"fruits.jpg"; char* filename = argc >= 2 ? argv[1] : (char*)"../data/fruits.jpg";
image0 = imread(filename, 1); image0 = imread(filename, 1);
if( image0.empty() ) if( image0.empty() )
......
...@@ -85,8 +85,8 @@ int main(int ac, char** av) ...@@ -85,8 +85,8 @@ int main(int ac, char** av)
cout << "writing images\n"; cout << "writing images\n";
fs << "images" << "["; fs << "images" << "[";
fs << "image1.jpg" << "myfi.png" << "baboon.jpg"; fs << "image1.jpg" << "myfi.png" << "../data/baboon.jpg";
cout << "image1.jpg" << " myfi.png" << " baboon.jpg" << endl; cout << "image1.jpg" << " myfi.png" << " ../data/baboon.jpg" << endl;
fs << "]"; fs << "]";
......
...@@ -27,7 +27,7 @@ using namespace std; ...@@ -27,7 +27,7 @@ using namespace std;
// "\nThis program is demonstration for ellipse fitting. The program finds\n" // "\nThis program is demonstration for ellipse fitting. The program finds\n"
// "contours and approximate it by ellipses.\n" // "contours and approximate it by ellipses.\n"
// "Call:\n" // "Call:\n"
// "./fitellipse [image_name -- Default stuff.jpg]\n" << endl; // "./fitellipse [image_name -- Default ../data/stuff.jpg]\n" << endl;
// } // }
int sliderPos = 70; int sliderPos = 70;
...@@ -38,7 +38,7 @@ void processImage(int, void*); ...@@ -38,7 +38,7 @@ void processImage(int, void*);
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
const char* filename = argc == 2 ? argv[1] : (char*)"stuff.jpg"; const char* filename = argc == 2 ? argv[1] : (char*)"../data/stuff.jpg";
image = imread(filename, 0); image = imread(filename, 0);
if( image.empty() ) if( image.empty() )
{ {
......
...@@ -11,12 +11,12 @@ static void help() ...@@ -11,12 +11,12 @@ static void help()
{ {
cout << "\nThis program demonstrates circle finding with the Hough transform.\n" cout << "\nThis program demonstrates circle finding with the Hough transform.\n"
"Usage:\n" "Usage:\n"
"./houghcircles <image_name>, Default is pic1.png\n" << endl; "./houghcircles <image_name>, Default is ../data/board.jpg\n" << endl;
} }
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
const char* filename = argc >= 2 ? argv[1] : "board.jpg"; const char* filename = argc >= 2 ? argv[1] : "../data/board.jpg";
Mat img = imread(filename, 0); Mat img = imread(filename, 0);
if(img.empty()) if(img.empty())
......
...@@ -11,12 +11,12 @@ static void help() ...@@ -11,12 +11,12 @@ static void help()
{ {
cout << "\nThis program demonstrates line finding with the Hough transform.\n" cout << "\nThis program demonstrates line finding with the Hough transform.\n"
"Usage:\n" "Usage:\n"
"./houghlines <image_name>, Default is pic1.png\n" << endl; "./houghlines <image_name>, Default is ../data/pic1.png\n" << endl;
} }
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
const char* filename = argc >= 2 ? argv[1] : "pic1.png"; const char* filename = argc >= 2 ? argv[1] : "../data/pic1.png";
Mat src = imread(filename, 0); Mat src = imread(filename, 0);
if(src.empty()) if(src.empty())
......
...@@ -14,7 +14,7 @@ static void help() ...@@ -14,7 +14,7 @@ static void help()
"It shows reading of images, converting to planes and merging back, color conversion\n" "It shows reading of images, converting to planes and merging back, color conversion\n"
"and also iterating through pixels.\n" "and also iterating through pixels.\n"
"Call:\n" "Call:\n"
"./image [image-name Default: lena.jpg]\n" << endl; "./image [image-name Default: ../data/lena.jpg]\n" << endl;
} }
// enable/disable use of mixed API in the code below. // enable/disable use of mixed API in the code below.
...@@ -28,7 +28,7 @@ static void help() ...@@ -28,7 +28,7 @@ static void help()
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
help(); help();
const char* imagename = argc > 1 ? argv[1] : "lena.jpg"; const char* imagename = argc > 1 ? argv[1] : "../data/lena.jpg";
#if DEMO_MIXED_API_USE #if DEMO_MIXED_API_USE
Ptr<IplImage> iplimg(cvLoadImage(imagename)); // Ptr<T> is safe ref-counting pointer class Ptr<IplImage> iplimg(cvLoadImage(imagename)); // Ptr<T> is safe ref-counting pointer class
if(!iplimg) if(!iplimg)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* findTransformECC that implements the image alignment ECC algorithm * findTransformECC that implements the image alignment ECC algorithm
* *
* *
* The demo loads an image (defaults to fruits.jpg) and it artificially creates * The demo loads an image (defaults to ../data/fruits.jpg) and it artificially creates
* a template image based on the given motion type. When two images are given, * a template image based on the given motion type. When two images are given,
* the first image is the input image and the second one defines the template image. * the first image is the input image and the second one defines the template image.
* In the latter case, you can also parse the warp's initialization. * In the latter case, you can also parse the warp's initialization.
...@@ -44,7 +44,7 @@ static void draw_warped_roi(Mat& image, const int width, const int height, Mat& ...@@ -44,7 +44,7 @@ static void draw_warped_roi(Mat& image, const int width, const int height, Mat&
const std::string keys = const std::string keys =
"{@inputImage | fruits.jpg | input image filename }" "{@inputImage | ../data/fruits.jpg | input image filename }"
"{@templateImage | | template image filename (optional)}" "{@templateImage | | template image filename (optional)}"
"{@inputWarp | | input warp (matrix) filename (optional)}" "{@inputWarp | | input warp (matrix) filename (optional)}"
"{n numOfIter | 50 | ECC's iterations }" "{n numOfIter | 50 | ECC's iterations }"
...@@ -64,7 +64,7 @@ static void help(void) ...@@ -64,7 +64,7 @@ static void help(void)
" are given, the initialization of the warp by command line parsing is possible. " " are given, the initialization of the warp by command line parsing is possible. "
"If inputWarp is missing, the identity transformation initializes the algorithm. \n" << endl; "If inputWarp is missing, the identity transformation initializes the algorithm. \n" << endl;
cout << "\nUsage example (one image): \n./ecc fruits.jpg -o=outWarp.ecc " cout << "\nUsage example (one image): \n./ecc ../data/fruits.jpg -o=outWarp.ecc "
"-m=euclidean -e=1e-6 -N=70 -v=1 \n" << endl; "-m=euclidean -e=1e-6 -N=70 -v=1 \n" << endl;
cout << "\nUsage example (two images with initialization): \n./ecc yourInput.png yourTemplate.png " cout << "\nUsage example (two images with initialization): \n./ecc yourInput.png yourTemplate.png "
......
...@@ -14,7 +14,7 @@ static void help() ...@@ -14,7 +14,7 @@ static void help()
<< "with surrounding image areas.\n" << "with surrounding image areas.\n"
"Using OpenCV version %s\n" << CV_VERSION << "\n" "Using OpenCV version %s\n" << CV_VERSION << "\n"
"Usage:\n" "Usage:\n"
"./inpaint [image_name -- Default fruits.jpg]\n" << endl; "./inpaint [image_name -- Default ../data/fruits.jpg]\n" << endl;
cout << "Hot keys: \n" cout << "Hot keys: \n"
"\tESC - quit the program\n" "\tESC - quit the program\n"
...@@ -47,7 +47,7 @@ static void onMouse( int event, int x, int y, int flags, void* ) ...@@ -47,7 +47,7 @@ static void onMouse( int event, int x, int y, int flags, void* )
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
char* filename = argc >= 2 ? argv[1] : (char*)"fruits.jpg"; char* filename = argc >= 2 ? argv[1] : (char*)"../data/fruits.jpg";
Mat img0 = imread(filename, -1); Mat img0 = imread(filename, -1);
if(img0.empty()) if(img0.empty())
{ {
......
...@@ -489,7 +489,7 @@ int main( int argc, char *argv[] ) ...@@ -489,7 +489,7 @@ int main( int argc, char *argv[] )
{ {
string filename_to_save = ""; string filename_to_save = "";
string filename_to_load = ""; string filename_to_load = "";
string data_filename = "./letter-recognition.data"; string data_filename = "../data/letter-recognition.data";
int method = 0; int method = 0;
int i; int i;
......
...@@ -83,7 +83,7 @@ static float calculateAccuracyPercent(const Mat &original, const Mat &predicted) ...@@ -83,7 +83,7 @@ static float calculateAccuracyPercent(const Mat &original, const Mat &predicted)
int main() int main()
{ {
const String filename = "data01.xml"; const String filename = "../data/data01.xml";
cout << "**********************************************************************" << endl; cout << "**********************************************************************" << endl;
cout << filename cout << filename
<< " contains digits 0 and 1 of 20 samples each, collected on an Android device" << endl; << " contains digits 0 and 1 of 20 samples each, collected on an Android device" << endl;
......
...@@ -15,8 +15,8 @@ int main(int argc, char** argv) ...@@ -15,8 +15,8 @@ int main(int argc, char** argv)
std::string in; std::string in;
if (argc != 2) if (argc != 2)
{ {
std::cout << "Usage: lsd_lines [input image]. Now loading building.jpg" << std::endl; std::cout << "Usage: lsd_lines [input image]. Now loading ../data/building.jpg" << std::endl;
in = "building.jpg"; in = "../data/building.jpg";
} }
else else
{ {
......
...@@ -58,7 +58,7 @@ static void ErodeDilate(int, void*) ...@@ -58,7 +58,7 @@ static void ErodeDilate(int, void*)
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
char* filename = argc == 2 ? argv[1] : (char*)"baboon.jpg"; char* filename = argc == 2 ? argv[1] : (char*)"../data/baboon.jpg";
if( (src = imread(filename,1)).empty() ) if( (src = imread(filename,1)).empty() )
return -1; return -1;
......
...@@ -17,7 +17,7 @@ static void help() ...@@ -17,7 +17,7 @@ static void help()
{ {
printf("\n" printf("\n"
"This program demonstrates a method for shape comparisson based on Shape Context\n" "This program demonstrates a method for shape comparisson based on Shape Context\n"
"You should run the program providing a number between 1 and 20 for selecting an image in the folder shape_sample.\n" "You should run the program providing a number between 1 and 20 for selecting an image in the folder ../data/shape_sample.\n"
"Call\n" "Call\n"
"./shape_example [number between 1 and 20]\n\n"); "./shape_example [number between 1 and 20]\n\n");
} }
...@@ -55,7 +55,7 @@ static vector<Point> simpleContour( const Mat& currentQuery, int n=300 ) ...@@ -55,7 +55,7 @@ static vector<Point> simpleContour( const Mat& currentQuery, int n=300 )
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
help(); help();
string path = "./shape_sample/"; string path = "../data/shape_sample/";
int indexQuery = 1; int indexQuery = 1;
if( argc < 2 ) if( argc < 2 )
{ {
......
...@@ -142,8 +142,8 @@ static void drawSquares( Mat& image, const vector<vector<Point> >& squares ) ...@@ -142,8 +142,8 @@ static void drawSquares( Mat& image, const vector<vector<Point> >& squares )
int main(int /*argc*/, char** /*argv*/) int main(int /*argc*/, char** /*argv*/)
{ {
static const char* names[] = { "pic1.png", "pic2.png", "pic3.png", static const char* names[] = { "../data/pic1.png", "../data/pic2.png", "../data/pic3.png",
"pic4.png", "pic5.png", "pic6.png", 0 }; "../data/pic4.png", "../data/pic5.png", "../data/pic6.png", 0 };
help(); help();
namedWindow( wndname, 1 ); namedWindow( wndname, 1 );
vector<vector<Point> > squares; vector<vector<Point> > squares;
......
...@@ -212,7 +212,7 @@ StereoCalib(const vector<string>& imagelist, Size boardSize, bool useCalibrated= ...@@ -212,7 +212,7 @@ StereoCalib(const vector<string>& imagelist, Size boardSize, bool useCalibrated=
cout << "average reprojection err = " << err/npoints << endl; cout << "average reprojection err = " << err/npoints << endl;
// save intrinsic parameters // save intrinsic parameters
FileStorage fs("intrinsics.yml", FileStorage::WRITE); FileStorage fs("../data/intrinsics.yml", FileStorage::WRITE);
if( fs.isOpened() ) if( fs.isOpened() )
{ {
fs << "M1" << cameraMatrix[0] << "D1" << distCoeffs[0] << fs << "M1" << cameraMatrix[0] << "D1" << distCoeffs[0] <<
...@@ -382,7 +382,7 @@ int main(int argc, char** argv) ...@@ -382,7 +382,7 @@ int main(int argc, char** argv)
if( imagelistfn == "" ) if( imagelistfn == "" )
{ {
imagelistfn = "stereo_calib.xml"; imagelistfn = "../data/stereo_calib.xml";
boardSize = Size(9, 6); boardSize = Size(9, 6);
} }
else if( boardSize.width <= 0 || boardSize.height <= 0 ) else if( boardSize.width <= 0 || boardSize.height <= 0 )
......
...@@ -44,8 +44,8 @@ static void on_trackbar( int, void* ) ...@@ -44,8 +44,8 @@ static void on_trackbar( int, void* )
int main( void ) int main( void )
{ {
/// Read image ( same size, same type ) /// Read image ( same size, same type )
src1 = imread("../images/LinuxLogo.jpg"); src1 = imread("../data/LinuxLogo.jpg");
src2 = imread("../images/WindowsLogo.jpg"); src2 = imread("../data/WindowsLogo.jpg");
if( src1.empty() ) { printf("Error loading src1 \n"); return -1; } if( src1.empty() ) { printf("Error loading src1 \n"); return -1; }
if( src2.empty() ) { printf("Error loading src2 \n"); return -1; } if( src2.empty() ) { printf("Error loading src2 \n"); return -1; }
......
...@@ -32,8 +32,8 @@ int main( void ) ...@@ -32,8 +32,8 @@ int main( void )
{ alpha = input; } { alpha = input; }
/// Read image ( same size, same type ) /// Read image ( same size, same type )
src1 = imread("../images/LinuxLogo.jpg"); src1 = imread("../data/LinuxLogo.jpg");
src2 = imread("../images/WindowsLogo.jpg"); src2 = imread("../data/WindowsLogo.jpg");
if( src1.empty() ) { std::cout<< "Error loading src1"<<std::endl; return -1; } if( src1.empty() ) { std::cout<< "Error loading src1"<<std::endl; return -1; }
if( src2.empty() ) { std::cout<< "Error loading src2"<<std::endl; return -1; } if( src2.empty() ) { std::cout<< "Error loading src2"<<std::endl; return -1; }
......
...@@ -32,7 +32,7 @@ int main( void ) ...@@ -32,7 +32,7 @@ int main( void )
printf( " * [ESC] -> Close program \n \n" ); printf( " * [ESC] -> Close program \n \n" );
/// Test image - Make sure it s divisible by 2^{n} /// Test image - Make sure it s divisible by 2^{n}
src = imread( "../images/chicky_512.png" ); src = imread( "../data/chicky_512.png" );
if( src.empty() ) if( src.empty() )
{ printf(" No data! -- Exiting the program \n"); { printf(" No data! -- Exiting the program \n");
return -1; } return -1; }
......
...@@ -35,7 +35,7 @@ int main( void ) ...@@ -35,7 +35,7 @@ int main( void )
namedWindow( window_name, WINDOW_AUTOSIZE ); namedWindow( window_name, WINDOW_AUTOSIZE );
/// Load the source image /// Load the source image
src = imread( "../images/lena.png", 1 ); src = imread( "../data/lena.jpg", 1 );
if( display_caption( "Original Image" ) != 0 ) { return 0; } if( display_caption( "Original Image" ) != 0 ) { return 0; }
......
...@@ -14,14 +14,14 @@ static void help(char* progName) ...@@ -14,14 +14,14 @@ static void help(char* progName)
<< "This program demonstrated the use of the discrete Fourier transform (DFT). " << endl << "This program demonstrated the use of the discrete Fourier transform (DFT). " << endl
<< "The dft of an image is taken and it's power spectrum is displayed." << endl << "The dft of an image is taken and it's power spectrum is displayed." << endl
<< "Usage:" << endl << "Usage:" << endl
<< progName << " [image_name -- default lena.jpg] " << endl << endl; << progName << " [image_name -- default ../data/lena.jpg] " << endl << endl;
} }
int main(int argc, char ** argv) int main(int argc, char ** argv)
{ {
help(argv[0]); help(argv[0]);
const char* filename = argc >=2 ? argv[1] : "lena.jpg"; const char* filename = argc >=2 ? argv[1] : "../data/lena.jpg";
Mat I = imread(filename, IMREAD_GRAYSCALE); Mat I = imread(filename, IMREAD_GRAYSCALE);
if( I.empty()) if( I.empty())
......
...@@ -80,7 +80,7 @@ int main(int ac, char** av) ...@@ -80,7 +80,7 @@ int main(int ac, char** av)
fs << "iterationNr" << 100; fs << "iterationNr" << 100;
fs << "strings" << "["; // text - string sequence fs << "strings" << "["; // text - string sequence
fs << "image1.jpg" << "Awesomeness" << "baboon.jpg"; fs << "image1.jpg" << "Awesomeness" << "../data/baboon.jpg";
fs << "]"; // close sequence fs << "]"; // close sequence
fs << "Mapping"; // text - mapping fs << "Mapping"; // text - mapping
......
...@@ -17,7 +17,7 @@ static void help( char* progName) ...@@ -17,7 +17,7 @@ static void help( char* progName)
<< "Also contains example for image read, spliting the planes, merging back and " << endl << "Also contains example for image read, spliting the planes, merging back and " << endl
<< " color conversion, plus iterating through pixels. " << endl << " color conversion, plus iterating through pixels. " << endl
<< "Usage:" << endl << "Usage:" << endl
<< progName << " [image-name Default: lena.jpg]" << endl << endl; << progName << " [image-name Default: ../data/lena.jpg]" << endl << endl;
} }
// comment out the define to use only the latest C++ API // comment out the define to use only the latest C++ API
...@@ -31,7 +31,7 @@ static void help( char* progName) ...@@ -31,7 +31,7 @@ static void help( char* progName)
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
help(argv[0]); help(argv[0]);
const char* imagename = argc > 1 ? argv[1] : "lena.jpg"; const char* imagename = argc > 1 ? argv[1] : "../data/lena.jpg";
#ifdef DEMO_MIXED_API_USE #ifdef DEMO_MIXED_API_USE
Ptr<IplImage> IplI(cvLoadImage(imagename)); // Ptr<T> is a safe ref-counting pointer class Ptr<IplImage> IplI(cvLoadImage(imagename)); // Ptr<T> is a safe ref-counting pointer class
......
...@@ -36,7 +36,7 @@ static void help() ...@@ -36,7 +36,7 @@ static void help()
const char* keys = const char* keys =
{ {
"{c camera | | use camera or not}" "{c camera | | use camera or not}"
"{fn file_name|baboon.jpg | image file }" "{fn file_name|../data/baboon.jpg | image file }"
"{a accel |auto | accelerator type: auto (default), cpu, gpu}" "{a accel |auto | accelerator type: auto (default), cpu, gpu}"
}; };
......
...@@ -14,7 +14,7 @@ static void help(char* progName) ...@@ -14,7 +14,7 @@ static void help(char* progName)
<< "This program shows how to filter images with mask: the write it yourself and the" << "This program shows how to filter images with mask: the write it yourself and the"
<< "filter2d way. " << endl << "filter2d way. " << endl
<< "Usage:" << endl << "Usage:" << endl
<< progName << " [image_name -- default lena.jpg] [G -- grayscale] " << endl << endl; << progName << " [image_name -- default ../data/lena.jpg] [G -- grayscale] " << endl << endl;
} }
...@@ -23,7 +23,7 @@ void Sharpen(const Mat& myImage,Mat& Result); ...@@ -23,7 +23,7 @@ void Sharpen(const Mat& myImage,Mat& Result);
int main( int argc, char* argv[]) int main( int argc, char* argv[])
{ {
help(argv[0]); help(argv[0]);
const char* filename = argc >=2 ? argv[1] : "lena.jpg"; const char* filename = argc >=2 ? argv[1] : "../data/lena.jpg";
Mat I, J, K; Mat I, J, K;
......
...@@ -12,11 +12,11 @@ const float nn_match_ratio = 0.8f; // Nearest neighbor matching ratio ...@@ -12,11 +12,11 @@ const float nn_match_ratio = 0.8f; // Nearest neighbor matching ratio
int main(void) int main(void)
{ {
Mat img1 = imread("graf1.png", IMREAD_GRAYSCALE); Mat img1 = imread("../data/graf1.png", IMREAD_GRAYSCALE);
Mat img2 = imread("graf3.png", IMREAD_GRAYSCALE); Mat img2 = imread("../data/graf3.png", IMREAD_GRAYSCALE);
Mat homography; Mat homography;
FileStorage fs("H1to3p.xml", FileStorage::READ); FileStorage fs("../data/H1to3p.xml", FileStorage::READ);
fs.getFirstTopLevelNode() >> homography; fs.getFirstTopLevelNode() >> homography;
vector<KeyPoint> kpts1, kpts2; vector<KeyPoint> kpts1, kpts2;
......
#include <opencv2/core/core.hpp> #include <opencv2/core/core.hpp>
#include <opencv2/imgcodecs.hpp> #include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui/highgui.hpp> #include <opencv2/highgui/highgui.hpp>
#include <iostream> #include <iostream>
#include <string>
using namespace cv; using namespace cv;
using namespace std; using namespace std;
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
if( argc != 2) string imageName("../data/HappyFish.jpg"); // by default
if( argc > 1)
{ {
cout <<" Usage: display_image ImageToLoadAndDisplay" << endl; imageName = argv[1];
return -1;
} }
Mat image; Mat image;
image = imread(argv[1], IMREAD_COLOR); // Read the file image = imread(imageName.c_str(), IMREAD_COLOR); // Read the file
if( image.empty() ) // Check for invalid input if( image.empty() ) // Check for invalid input
{ {
......
...@@ -111,7 +111,7 @@ int main( int argc, const char** argv ) ...@@ -111,7 +111,7 @@ int main( int argc, const char** argv )
else else
{ {
if( inputName.empty() ) if( inputName.empty() )
inputName = "lena.jpg"; inputName = "../data/lena.jpg";
image = imread( inputName, 1 ).getUMat(ACCESS_READ); image = imread( inputName, 1 ).getUMat(ACCESS_READ);
if( image.empty() ) if( image.empty() )
{ {
......
...@@ -13,7 +13,7 @@ static void help() ...@@ -13,7 +13,7 @@ static void help()
{ {
cout << "\nThis program demonstrates the famous watershed segmentation algorithm in OpenCV: watershed()\n" cout << "\nThis program demonstrates the famous watershed segmentation algorithm in OpenCV: watershed()\n"
"Usage:\n" "Usage:\n"
"./watershed [image_name -- default is fruits.jpg]\n" << endl; "./watershed [image_name -- default is ../data/fruits.jpg]\n" << endl;
cout << "Hot keys: \n" cout << "Hot keys: \n"
...@@ -48,7 +48,7 @@ static void onMouse( int event, int x, int y, int flags, void* ) ...@@ -48,7 +48,7 @@ static void onMouse( int event, int x, int y, int flags, void* )
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
char* filename = argc >= 2 ? argv[1] : (char*)"fruits.jpg"; char* filename = argc >= 2 ? argv[1] : (char*)"../data/fruits.jpg";
Mat img0 = imread(filename, 1), imgGray; Mat img0 = imread(filename, 1), imgGray;
if( img0.empty() ) if( img0.empty() )
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment