Renesas / opencv-lib

Dependents:   RZ_A2M_Mbed_samples

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers hal.hpp Source File

hal.hpp

00001 #ifndef CV_IMGPROC_HAL_HPP
00002 #define CV_IMGPROC_HAL_HPP
00003 
00004 #include "opencv2/core/cvdef.h"
00005 #include "opencv2/core/cvstd.hpp"
00006 #include "opencv2/core/hal/interface.h"
00007 
00008 namespace cv { namespace hal {
00009 
00010 //! @addtogroup imgproc_hal_functions
00011 //! @{
00012 
00013 struct CV_EXPORTS Filter2D
00014 {
00015     static Ptr<hal::Filter2D> create(uchar * kernel_data, size_t kernel_step, int kernel_type,
00016                                      int kernel_width, int kernel_height,
00017                                      int max_width, int max_height,
00018                                      int stype, int dtype,
00019                                      int borderType, double delta,
00020                                      int anchor_x, int anchor_y,
00021                                      bool isSubmatrix, bool isInplace);
00022     virtual void apply(uchar * src_data, size_t src_step,
00023                        uchar * dst_data, size_t dst_step,
00024                        int width, int height,
00025                        int full_width, int full_height,
00026                        int offset_x, int offset_y) = 0;
00027     virtual ~Filter2D() {}
00028 };
00029 
00030 struct CV_EXPORTS SepFilter2D
00031 {
00032     static Ptr<hal::SepFilter2D> create(int stype, int dtype, int ktype,
00033                                         uchar * kernelx_data, int kernelx_len,
00034                                         uchar * kernely_data, int kernely_len,
00035                                         int anchor_x, int anchor_y,
00036                                         double delta, int borderType);
00037     virtual void apply(uchar * src_data, size_t src_step,
00038                        uchar * dst_data, size_t dst_step,
00039                        int width, int height,
00040                        int full_width, int full_height,
00041                        int offset_x, int offset_y) = 0;
00042     virtual ~SepFilter2D() {}
00043 };
00044 
00045 
00046 struct  CV_EXPORTS Morph
00047 {
00048     static Ptr<Morph> create(int op, int src_type, int dst_type, int max_width, int max_height,
00049                                     int kernel_type, uchar * kernel_data, size_t kernel_step,
00050                                     int kernel_width, int kernel_height,
00051                                     int anchor_x, int anchor_y,
00052                                     int borderType, const double borderValue[4],
00053                                     int iterations, bool isSubmatrix, bool allowInplace);
00054     virtual void apply(uchar * src_data, size_t src_step, uchar * dst_data, size_t dst_step, int width, int height,
00055                        int roi_width, int roi_height, int roi_x, int roi_y,
00056                        int roi_width2, int roi_height2, int roi_x2, int roi_y2) = 0;
00057     virtual ~Morph() {}
00058 };
00059 
00060 
00061 CV_EXPORTS void resize(int src_type,
00062                        const uchar * src_data, size_t src_step, int src_width, int src_height,
00063                        uchar * dst_data, size_t dst_step, int dst_width, int dst_height,
00064                        double inv_scale_x, double inv_scale_y, int interpolation);
00065 
00066 CV_EXPORTS void warpAffine(int src_type,
00067                            const uchar * src_data, size_t src_step, int src_width, int src_height,
00068                            uchar * dst_data, size_t dst_step, int dst_width, int dst_height,
00069                            const double M[6], int interpolation, int borderType, const double borderValue[4]);
00070 
00071 CV_EXPORTS void warpPerspectve(int src_type,
00072                                const uchar * src_data, size_t src_step, int src_width, int src_height,
00073                                uchar * dst_data, size_t dst_step, int dst_width, int dst_height,
00074                                const double M[9], int interpolation, int borderType, const double borderValue[4]);
00075 
00076 CV_EXPORTS void cvtBGRtoBGR(const uchar * src_data, size_t src_step,
00077                             uchar * dst_data, size_t dst_step,
00078                             int width, int height,
00079                             int depth, int scn, int dcn, bool swapBlue);
00080 
00081 CV_EXPORTS void cvtBGRtoBGR5x5(const uchar * src_data, size_t src_step,
00082                                uchar * dst_data, size_t dst_step,
00083                                int width, int height,
00084                                int scn, bool swapBlue, int greenBits);
00085 
00086 CV_EXPORTS void cvtBGR5x5toBGR(const uchar * src_data, size_t src_step,
00087                                uchar * dst_data, size_t dst_step,
00088                                int width, int height,
00089                                int dcn, bool swapBlue, int greenBits);
00090 
00091 CV_EXPORTS void cvtBGRtoGray(const uchar * src_data, size_t src_step,
00092                              uchar * dst_data, size_t dst_step,
00093                              int width, int height,
00094                              int depth, int scn, bool swapBlue);
00095 
00096 CV_EXPORTS void cvtGraytoBGR(const uchar * src_data, size_t src_step,
00097                              uchar * dst_data, size_t dst_step,
00098                              int width, int height,
00099                              int depth, int dcn);
00100 
00101 CV_EXPORTS void cvtBGR5x5toGray(const uchar * src_data, size_t src_step,
00102                                 uchar * dst_data, size_t dst_step,
00103                                 int width, int height,
00104                                 int greenBits);
00105 
00106 CV_EXPORTS void cvtGraytoBGR5x5(const uchar * src_data, size_t src_step,
00107                                 uchar * dst_data, size_t dst_step,
00108                                 int width, int height,
00109                                 int greenBits);
00110 CV_EXPORTS void cvtBGRtoYUV(const uchar * src_data, size_t src_step,
00111                             uchar * dst_data, size_t dst_step,
00112                             int width, int height,
00113                             int depth, int scn, bool swapBlue, bool isCbCr);
00114 
00115 CV_EXPORTS void cvtYUVtoBGR(const uchar * src_data, size_t src_step,
00116                             uchar * dst_data, size_t dst_step,
00117                             int width, int height,
00118                             int depth, int dcn, bool swapBlue, bool isCbCr);
00119 
00120 CV_EXPORTS void cvtBGRtoXYZ(const uchar * src_data, size_t src_step,
00121                             uchar * dst_data, size_t dst_step,
00122                             int width, int height,
00123                             int depth, int scn, bool swapBlue);
00124 
00125 CV_EXPORTS void cvtXYZtoBGR(const uchar * src_data, size_t src_step,
00126                             uchar * dst_data, size_t dst_step,
00127                             int width, int height,
00128                             int depth, int dcn, bool swapBlue);
00129 
00130 CV_EXPORTS void cvtBGRtoHSV(const uchar * src_data, size_t src_step,
00131                             uchar * dst_data, size_t dst_step,
00132                             int width, int height,
00133                             int depth, int scn, bool swapBlue, bool isFullRange, bool isHSV);
00134 
00135 CV_EXPORTS void cvtHSVtoBGR(const uchar * src_data, size_t src_step,
00136                             uchar * dst_data, size_t dst_step,
00137                             int width, int height,
00138                             int depth, int dcn, bool swapBlue, bool isFullRange, bool isHSV);
00139 
00140 CV_EXPORTS void cvtBGRtoLab(const uchar * src_data, size_t src_step,
00141                             uchar * dst_data, size_t dst_step,
00142                             int width, int height,
00143                             int depth, int scn, bool swapBlue, bool isLab, bool srgb);
00144 
00145 CV_EXPORTS void cvtLabtoBGR(const uchar * src_data, size_t src_step,
00146                             uchar * dst_data, size_t dst_step,
00147                             int width, int height,
00148                             int depth, int dcn, bool swapBlue, bool isLab, bool srgb);
00149 
00150 CV_EXPORTS void cvtTwoPlaneYUVtoBGR(const uchar * src_data, size_t src_step,
00151                                     uchar * dst_data, size_t dst_step,
00152                                     int dst_width, int dst_height,
00153                                     int dcn, bool swapBlue, int uIdx);
00154 
00155 CV_EXPORTS void cvtThreePlaneYUVtoBGR(const uchar * src_data, size_t src_step,
00156                                       uchar * dst_data, size_t dst_step,
00157                                       int dst_width, int dst_height,
00158                                       int dcn, bool swapBlue, int uIdx);
00159 
00160 CV_EXPORTS void cvtBGRtoThreePlaneYUV(const uchar * src_data, size_t src_step,
00161                                       uchar * dst_data, size_t dst_step,
00162                                       int width, int height,
00163                                       int scn, bool swapBlue, int uIdx);
00164 
00165 CV_EXPORTS void cvtOnePlaneYUVtoBGR(const uchar * src_data, size_t src_step,
00166                                     uchar * dst_data, size_t dst_step,
00167                                     int width, int height,
00168                                     int dcn, bool swapBlue, int uIdx, int ycn);
00169 
00170 CV_EXPORTS void cvtRGBAtoMultipliedRGBA(const uchar * src_data, size_t src_step,
00171                                         uchar * dst_data, size_t dst_step,
00172                                         int width, int height);
00173 
00174 CV_EXPORTS void cvtMultipliedRGBAtoRGBA(const uchar * src_data, size_t src_step,
00175                                         uchar * dst_data, size_t dst_step,
00176                                         int width, int height);
00177 
00178 CV_EXPORTS void integral(int depth, int sdepth, int sqdepth,
00179                          const uchar* src, size_t srcstep,
00180                          uchar* sum, size_t sumstep,
00181                          uchar* sqsum, size_t sqsumstep,
00182                          uchar* tilted, size_t tstep,
00183                          int width, int height, int cn);
00184 
00185 //! @}
00186 
00187 }}
00188 
00189 #endif // CV_IMGPROC_HAL_HPP