From f660461bb378edfdc530e6144ca92d5e3cd25f8a Mon Sep 17 00:00:00 2001 From: Suleyman TURKMEN Date: Mon, 3 Aug 2015 18:57:33 +0300 Subject: [PATCH] documentation patch --- modules/highgui/include/opencv2/highgui.hpp | 152 +++++++----------- .../imgcodecs/include/opencv2/imgcodecs.hpp | 4 +- modules/imgproc/include/opencv2/imgproc.hpp | 4 +- 3 files changed, 64 insertions(+), 96 deletions(-) diff --git a/modules/highgui/include/opencv2/highgui.hpp b/modules/highgui/include/opencv2/highgui.hpp index f3afceef0c..54dbe7c916 100644 --- a/modules/highgui/include/opencv2/highgui.hpp +++ b/modules/highgui/include/opencv2/highgui.hpp @@ -172,21 +172,23 @@ namespace cv //! @addtogroup highgui //! @{ -// Flags for namedWindow -enum { WINDOW_NORMAL = 0x00000000, // the user can resize the window (no constraint) / also use to switch a fullscreen window to a normal size - WINDOW_AUTOSIZE = 0x00000001, // the user cannot resize the window, the size is constrainted by the image displayed - WINDOW_OPENGL = 0x00001000, // window with opengl support +//! Flags for cv::namedWindow +enum WindowFlags { + WINDOW_NORMAL = 0x00000000, //!< the user can resize the window (no constraint) / also use to switch a fullscreen window to a normal size + WINDOW_AUTOSIZE = 0x00000001, //!< the user cannot resize the window, the size is constrainted by the image displayed + WINDOW_OPENGL = 0x00001000, //!< window with opengl support - WINDOW_FULLSCREEN = 1, // change the window to fullscreen - WINDOW_FREERATIO = 0x00000100, // the image expends as much as it can (no ratio constraint) - WINDOW_KEEPRATIO = 0x00000000 // the ratio of the image is respected + WINDOW_FULLSCREEN = 1, //!< change the window to fullscreen + WINDOW_FREERATIO = 0x00000100, //!< the image expends as much as it can (no ratio constraint) + WINDOW_KEEPRATIO = 0x00000000 //!< the ratio of the image is respected }; -// Flags for set / getWindowProperty -enum { WND_PROP_FULLSCREEN = 0, // fullscreen property (can be WINDOW_NORMAL or WINDOW_FULLSCREEN) - WND_PROP_AUTOSIZE = 1, // autosize property (can be WINDOW_NORMAL or WINDOW_AUTOSIZE) - WND_PROP_ASPECT_RATIO = 2, // window's aspect ration (can be set to WINDOW_FREERATIO or WINDOW_KEEPRATIO); - WND_PROP_OPENGL = 3 // opengl support +//! Flags for cv::setWindowProperty / cv::getWindowProperty +enum WindowPropertyFlags { + WND_PROP_FULLSCREEN = 0, //!< fullscreen property (can be WINDOW_NORMAL or WINDOW_FULLSCREEN) + WND_PROP_AUTOSIZE = 1, //!< autosize property (can be WINDOW_NORMAL or WINDOW_AUTOSIZE) + WND_PROP_ASPECT_RATIO = 2, //!< window's aspect ration (can be set to WINDOW_FREERATIO or WINDOW_KEEPRATIO); + WND_PROP_OPENGL = 3 //!< opengl support }; enum { EVENT_MOUSEMOVE = 0, @@ -211,24 +213,27 @@ enum { EVENT_FLAG_LBUTTON = 1, EVENT_FLAG_ALTKEY = 32 }; -// Qt font -enum { QT_FONT_LIGHT = 25, //QFont::Light, - QT_FONT_NORMAL = 50, //QFont::Normal, - QT_FONT_DEMIBOLD = 63, //QFont::DemiBold, - QT_FONT_BOLD = 75, //QFont::Bold, - QT_FONT_BLACK = 87 //QFont::Black +//! Qt font weight +enum QtFontWeights { + QT_FONT_LIGHT = 25, //!< QFont::Light ( Weight of 25 ) + QT_FONT_NORMAL = 50, //!< QFont::Normal ( Weight of 50 ) + QT_FONT_DEMIBOLD = 63, //!< QFont::DemiBold ( Weight of 63 ) + QT_FONT_BOLD = 75, //!< QFont::Bold ( Weight of 75 ) + QT_FONT_BLACK = 87 //!< QFont::Black ( Weight of 87 ) }; -// Qt font style -enum { QT_STYLE_NORMAL = 0, //QFont::StyleNormal, - QT_STYLE_ITALIC = 1, //QFont::StyleItalic, - QT_STYLE_OBLIQUE = 2 //QFont::StyleOblique +//! Qt font style +enum QtFontStyles { + QT_STYLE_NORMAL = 0, //!< QFont::StyleNormal + QT_STYLE_ITALIC = 1, //!< QFont::StyleItalic + QT_STYLE_OBLIQUE = 2 //!< QFont::StyleOblique }; -// Qt "button" type -enum { QT_PUSH_BUTTON = 0, - QT_CHECKBOX = 1, - QT_RADIOBOX = 2 +//! Qt "button" type +enum QtButtonTypes { + QT_PUSH_BUTTON = 0, //!< Push button + QT_CHECKBOX = 1, //!< Checkbox button + QT_RADIOBOX = 2 //!< Radiobox button }; @@ -240,32 +245,28 @@ typedef void (*ButtonCallback)(int state, void* userdata); /** @brief Creates a window. @param winname Name of the window in the window caption that may be used as a window identifier. -@param flags Flags of the window. The supported flags are: -> - **WINDOW_NORMAL** If this is set, the user can resize the window (no constraint). -> - **WINDOW_AUTOSIZE** If this is set, the window size is automatically adjusted to fit the -> displayed image (see imshow ), and you cannot change the window size manually. -> - **WINDOW_OPENGL** If this is set, the window will be created with OpenGL support. +@param flags Flags of the window. The supported flags are: (cv::WindowFlags) The function namedWindow creates a window that can be used as a placeholder for images and trackbars. Created windows are referred to by their names. If a window with the same name already exists, the function does nothing. -You can call destroyWindow or destroyAllWindows to close the window and de-allocate any associated +You can call cv::destroyWindow or cv::destroyAllWindows to close the window and de-allocate any associated memory usage. For a simple program, you do not really have to call these functions because all the resources and windows of the application are closed automatically by the operating system upon exit. @note Qt backend supports additional flags: - - **CV_WINDOW_NORMAL or CV_WINDOW_AUTOSIZE:** CV_WINDOW_NORMAL enables you to resize the - window, whereas CV_WINDOW_AUTOSIZE adjusts automatically the window size to fit the + - **WINDOW_NORMAL or WINDOW_AUTOSIZE:** WINDOW_NORMAL enables you to resize the + window, whereas WINDOW_AUTOSIZE adjusts automatically the window size to fit the displayed image (see imshow ), and you cannot change the window size manually. - - **CV_WINDOW_FREERATIO or CV_WINDOW_KEEPRATIO:** CV_WINDOW_FREERATIO adjusts the image - with no respect to its ratio, whereas CV_WINDOW_KEEPRATIO keeps the image ratio. + - **WINDOW_FREERATIO or WINDOW_KEEPRATIO:** WINDOW_FREERATIO adjusts the image + with no respect to its ratio, whereas WINDOW_KEEPRATIO keeps the image ratio. - **CV_GUI_NORMAL or CV_GUI_EXPANDED:** CV_GUI_NORMAL is the old way to draw the window without statusbar and toolbar, whereas CV_GUI_EXPANDED is a new enhanced GUI. -By default, flags == CV_WINDOW_AUTOSIZE | CV_WINDOW_KEEPRATIO | CV_GUI_EXPANDED +By default, flags == WINDOW_AUTOSIZE | WINDOW_KEEPRATIO | CV_GUI_EXPANDED */ CV_EXPORTS_W void namedWindow(const String& winname, int flags = WINDOW_AUTOSIZE); @@ -314,7 +315,7 @@ CV_EXPORTS_W int waitKey(int delay = 0); @param mat Image to be shown. The function imshow displays an image in the specified window. If the window was created with the -CV_WINDOW_AUTOSIZE flag, the image is shown with its original size, however it is still limited by the screen resolution. +WINDOW_AUTOSIZE flag, the image is shown with its original size, however it is still limited by the screen resolution. Otherwise, the image is scaled to fit the window. The function may scale the image, depending on its depth: - If the image is 8-bit unsigned, it is displayed as is. @@ -326,13 +327,13 @@ Otherwise, the image is scaled to fit the window. The function may scale the ima If window was created with OpenGL support, imshow also support ogl::Buffer , ogl::Texture2D and cuda::GpuMat as input. -If the window was not created before this function, it is assumed creating a window with CV_WINDOW_AUTOSIZE. +If the window was not created before this function, it is assumed creating a window with WINDOW_AUTOSIZE. If you need to show an image that is bigger than the screen resolution, you will need to call namedWindow("", WINDOW_NORMAL) before the imshow. -@note This function should be followed by waitKey function which displays the image for specified -milliseconds. Otherwise, it won't display the image. For example, waitKey(0) will display the window -infinitely until any keypress (it is suitable for image display). waitKey(25) will display a frame +@note This function should be followed by cv::waitKey function which displays the image for specified +milliseconds. Otherwise, it won't display the image. For example, cv::waitKey(0) will display the window +infinitely until any keypress (it is suitable for image display). cv::waitKey(25) will display a frame for 25 ms, after which display will be automatically closed. (If you put it in a loop to read videos, it will display the video frame-by-frame) @@ -340,6 +341,8 @@ videos, it will display the video frame-by-frame) [Windows Backend Only] Pressing Ctrl+C will copy the image to the clipboard. +[Windows Backend Only] Pressing Ctrl+S will show a dialog to save the image. + */ CV_EXPORTS_W void imshow(const String& winname, InputArray mat); @@ -352,7 +355,7 @@ CV_EXPORTS_W void imshow(const String& winname, InputArray mat); @note - The specified window size is for the image area. Toolbars are not counted. -- Only windows created without CV_WINDOW_AUTOSIZE flag can be resized. +- Only windows created without WINDOW_AUTOSIZE flag can be resized. */ CV_EXPORTS_W void resizeWindow(const String& winname, int width, int height); @@ -367,21 +370,8 @@ CV_EXPORTS_W void moveWindow(const String& winname, int x, int y); /** @brief Changes parameters of a window dynamically. @param winname Name of the window. -@param prop_id Window property to edit. The following operation flags are available: - - **CV_WND_PROP_FULLSCREEN** Change if the window is fullscreen ( CV_WINDOW_NORMAL or - CV_WINDOW_FULLSCREEN ). - - **CV_WND_PROP_AUTOSIZE** Change if the window is resizable (CV_WINDOW_NORMAL or - CV_WINDOW_AUTOSIZE ). - - **CV_WND_PROP_ASPECTRATIO** Change if the aspect ratio of the image is preserved ( - CV_WINDOW_FREERATIO or CV_WINDOW_KEEPRATIO ). -@param prop_value New value of the window property. The following operation flags are available: - - **CV_WINDOW_NORMAL** Change the window to normal size or make the window resizable. - - **CV_WINDOW_AUTOSIZE** Constrain the size by the displayed image. The window is not - resizable. - - **CV_WINDOW_FULLSCREEN** Change the window to fullscreen. - - **CV_WINDOW_FREERATIO** Make the window resizable without any ratio constraints. - - **CV_WINDOW_KEEPRATIO** Make the window resizable, but preserve the proportions of the - displayed image. +@param prop_id Window property to edit. The supported operation flags are: (cv::WindowPropertyFlags) +@param prop_value New value of the window property. The supported flags are: (cv::WindowFlags) The function setWindowProperty enables changing properties of a window. */ @@ -394,13 +384,7 @@ CV_EXPORTS_W void setWindowTitle(const String& winname, const String& title); /** @brief Provides parameters of a window. @param winname Name of the window. -@param prop_id Window property to retrieve. The following operation flags are available: - - **CV_WND_PROP_FULLSCREEN** Change if the window is fullscreen ( CV_WINDOW_NORMAL or - CV_WINDOW_FULLSCREEN ). - - **CV_WND_PROP_AUTOSIZE** Change if the window is resizable (CV_WINDOW_NORMAL or - CV_WINDOW_AUTOSIZE ). - - **CV_WND_PROP_ASPECTRATIO** Change if the aspect ratio of the image is preserved - (CV_WINDOW_FREERATIO or CV_WINDOW_KEEPRATIO ). +@param prop_id Window property to retrieve. The following operation flags are available: (cv::WindowPropertyFlags) See setWindowProperty to know the meaning of the returned values. @@ -466,10 +450,6 @@ control panel. Clicking the label of each trackbar enables editing the trackbar values manually. -@note - -- An example of using the trackbar functionality can be found at - opencv_source_code/samples/cpp/connected_components.cpp */ CV_EXPORTS int createTrackbar(const String& trackbarname, const String& winname, int* value, int count, @@ -609,25 +589,15 @@ struct QtFont font is set to a system-dependent default value. Generally, this is 12 points. @param color Color of the font in BGRA where A = 255 is fully transparent. Use the macro CV _ RGB for simplicity. -@param weight Font weight. The following operation flags are available: - - **CV_FONT_LIGHT** Weight of 25 - - **CV_FONT_NORMAL** Weight of 50 - - **CV_FONT_DEMIBOLD** Weight of 63 - - **CV_FONT_BOLD** Weight of 75 - - **CV_FONT_BLACK** Weight of 87 - - You can also specify a positive integer for better control. -@param style Font style. The following operation flags are available: - - **CV_STYLE_NORMAL** Normal font - - **CV_STYLE_ITALIC** Italic font - - **CV_STYLE_OBLIQUE** Oblique font +@param weight Font weight. Available operation flags are : (cv::QtFontWeights) You can also specify a positive integer for better control. +@param style Font style. The following operation flags are available: (cv::QtFontStyles) @param spacing Spacing between characters. It can be negative or positive. -The function fontQt creates a CvFont object. This CvFont is not compatible with putText . +The function fontQt creates a QtFont object. This QtFont is not compatible with putText . A basic usage of this function is the following: : @code - CvFont font = fontQt(''Times''); + QtFont font = fontQt(''Times''); addText( img1, ``Hello World !'', Point(50,50), font); @endcode */ @@ -642,7 +612,7 @@ CV_EXPORTS QtFont fontQt(const String& nameFont, int pointSize = -1, @param org Point(x,y) where the text should start on an image. @param font Font to use to draw a text. -The function addText draws *text* on an image *img* using a specific font *font* (see example fontQt +The function addText draws *text* on an image *img* using a specific font *font* (see example cv::fontQt ) */ CV_EXPORTS void addText( const Mat& img, const String& text, Point org, const QtFont& font); @@ -669,7 +639,7 @@ CV_EXPORTS void displayOverlay(const String& winname, const String& text, int de the previous text timed out, the timer is restarted and the text is updated. If this value is zero, the text never disappears. -The function displayOverlay displays useful information/tips on top of the window for a certain +The function displayStatusBar displays useful information/tips on top of the window for a certain amount of time *delayms* . This information is displayed on the window statusbar (the window must be created with the CV_GUI_EXPANDED flags). */ @@ -705,11 +675,7 @@ CV_EXPORTS void stopLoop(); This function should be prototyped as void Foo(int state,\*void); . *state* is the current state of the button. It could be -1 for a push button, 0 or 1 for a check/radio box button. @param userdata Pointer passed to the callback function. -@param type Optional type of the button. - - **CV_PUSH_BUTTON** Push button - - **CV_CHECKBOX** Checkbox button - - **CV_RADIOBOX** Radiobox button. The radiobox on the same buttonbar (same line) are - exclusive, that is only one can be selected at a time. +@param type Optional type of the button. Available types are: (cv::QtButtonTypes) @param initial_button_state Default state of the button. Use for checkbox and radiobox. Its value could be 0 or 1. *(Optional)* @@ -720,10 +686,10 @@ control panel before, or if the last element attached to the control panel was a See below various examples of the createButton function call: : @code createButton(NULL,callbackButton);//create a push button "button 0", that will call callbackButton. - createButton("button2",callbackButton,NULL,CV_CHECKBOX,0); + createButton("button2",callbackButton,NULL,QT_CHECKBOX,0); createButton("button3",callbackButton,&value); - createButton("button5",callbackButton1,NULL,CV_RADIOBOX); - createButton("button6",callbackButton2,NULL,CV_PUSH_BUTTON,1); + createButton("button5",callbackButton1,NULL,QT_RADIOBOX); + createButton("button6",callbackButton2,NULL,QT_PUSH_BUTTON,1); @endcode */ CV_EXPORTS int createButton( const String& bar_name, ButtonCallback on_change, diff --git a/modules/imgcodecs/include/opencv2/imgcodecs.hpp b/modules/imgcodecs/include/opencv2/imgcodecs.hpp index b7c8633cef..e21db8e1e5 100644 --- a/modules/imgcodecs/include/opencv2/imgcodecs.hpp +++ b/modules/imgcodecs/include/opencv2/imgcodecs.hpp @@ -110,9 +110,11 @@ returns an empty matrix ( Mat::data==NULL ). Currently, the following file forma - JPEG 2000 files - \*.jp2 (see the *Notes* section) - Portable Network Graphics - \*.png (see the *Notes* section) - WebP - \*.webp (see the *Notes* section) -- Portable image format - \*.pbm, \*.pgm, \*.ppm (always supported) +- Portable image format - \*.pbm, \*.pgm, \*.ppm \*.pxm, \*.pnm (always supported) - Sun rasters - \*.sr, \*.ras (always supported) - TIFF files - \*.tiff, \*.tif (see the *Notes* section) +- OpenEXR Image files - \*.exr (see the *Notes* section) +- Radiance HDR - \*.hdr, \*.pic (always supported) @note diff --git a/modules/imgproc/include/opencv2/imgproc.hpp b/modules/imgproc/include/opencv2/imgproc.hpp index baa81cf0ba..8446666e02 100644 --- a/modules/imgproc/include/opencv2/imgproc.hpp +++ b/modules/imgproc/include/opencv2/imgproc.hpp @@ -1968,8 +1968,8 @@ way: // specify fx and fy and let the function compute the destination image size. resize(src, dst, Size(), 0.5, 0.5, interpolation); @endcode -To shrink an image, it will generally look best with CV_INTER_AREA interpolation, whereas to -enlarge an image, it will generally look best with CV_INTER_CUBIC (slow) or CV_INTER_LINEAR +To shrink an image, it will generally look best with cv::INTER_AREA interpolation, whereas to +enlarge an image, it will generally look best with cv::INTER_CUBIC (slow) or cv::INTER_LINEAR (faster but still looks OK). @param src input image.