25 #include <fvfilters/hor_search.h> 27 #include <fvutils/color/yuv.h> 60 register unsigned int h = 0;
61 register unsigned int w = 0;
66 register unsigned char *up = YUV422_PLANAR_U_PLANE(
src[0],
src_roi[0]->image_width,
src_roi[0]->image_height)
69 register unsigned char *vp = YUV422_PLANAR_V_PLANE(
src[0],
src_roi[0]->image_width,
src_roi[0]->image_height)
76 unsigned char *lyp = yp;
77 unsigned char *lup = up;
78 unsigned char *lvp = vp;
79 unsigned char *ldyp = dyp;
86 for (h = 0; (h <
src_roi[0]->
height) && (h < dst_roi->height); ++h) {
89 for (w = 0; (w <
src_roi[0]->
width) && (w < dst_roi->width); ++w) {
90 if ( (cm->
determine(*yp++, *up, *vp) == what) ) {
96 if ( (cm->
determine(*yp++, *up++, *vp++) == what) ) {
111 if (left != 0 && left < dst_roi->width) ldyp[left] = 255;
112 if (right != 0 && right < dst_roi->width) ldyp[right] = 255;
virtual void apply()
Apply the filter.
fawkes::upoint_t start
ROI start.
unsigned int y
y coordinate
unsigned int x
x coordinate
unsigned int width
ROI width.
unsigned char ** src
Source buffers, dynamically allocated by Filter ctor.
ROI ** src_roi
Source ROIs, dynamically allocated by Filter ctor.
unsigned int height
ROI height.
unsigned int line_step
line step
unsigned char * dst
Destination buffer.
unsigned int pixel_step
pixel step
ROI * dst_roi
Destination ROI.
FilterHSearch(ColorModel *cm, color_t what)
Constructor.
virtual color_t determine(unsigned int y, unsigned int u, unsigned int v) const =0
Determine classification of YUV pixel.