CV_EXPORTS_W int getTrackbarPos( const string& trackbarname, const string& winname );
CV_EXPORTS_W void setTrackbarPos( const string& trackbarname, const string& winname, int pos );
+enum
+{
+ EVENT_MOUSEMOVE =0,
+ EVENT_LBUTTONDOWN =1,
+ EVENT_RBUTTONDOWN =2,
+ EVENT_MBUTTONDOWN =3,
+ EVENT_LBUTTONUP =4,
+ EVENT_RBUTTONUP =5,
+ EVENT_MBUTTONUP =6,
+ EVENT_LBUTTONDBLCLK =7,
+ EVENT_RBUTTONDBLCLK =8,
+ EVENT_MBUTTONDBLCLK =9
+};
+
+enum
+{
+ EVENT_FLAG_LBUTTON =1,
+ EVENT_FLAG_RBUTTON =2,
+ EVENT_FLAG_MBUTTON =4,
+ EVENT_FLAG_CTRLKEY =8,
+ EVENT_FLAG_SHIFTKEY =16,
+ EVENT_FLAG_ALTKEY =32
+};
+
typedef void (*MouseCallback )(int event, int x, int y, int flags, void* param);
//! assigns callback for mouse events
Scalar loDiff=Scalar(), Scalar upDiff=Scalar(),
int flags=4 );
+
+enum
+{
+ COLOR_BGR2BGRA =0,
+ COLOR_RGB2RGBA =COLOR_BGR2BGRA,
+
+ COLOR_BGRA2BGR =1,
+ COLOR_RGBA2RGB =COLOR_BGRA2BGR,
+
+ COLOR_BGR2RGBA =2,
+ COLOR_RGB2BGRA =COLOR_BGR2RGBA,
+
+ COLOR_RGBA2BGR =3,
+ COLOR_BGRA2RGB =COLOR_RGBA2BGR,
+
+ COLOR_BGR2RGB =4,
+ COLOR_RGB2BGR =COLOR_BGR2RGB,
+
+ COLOR_BGRA2RGBA =5,
+ COLOR_RGBA2BGRA =COLOR_BGRA2RGBA,
+
+ COLOR_BGR2GRAY =6,
+ COLOR_RGB2GRAY =7,
+ COLOR_GRAY2BGR =8,
+ COLOR_GRAY2RGB =COLOR_GRAY2BGR,
+ COLOR_GRAY2BGRA =9,
+ COLOR_GRAY2RGBA =COLOR_GRAY2BGRA,
+ COLOR_BGRA2GRAY =10,
+ COLOR_RGBA2GRAY =11,
+
+ COLOR_BGR2BGR565 =12,
+ COLOR_RGB2BGR565 =13,
+ COLOR_BGR5652BGR =14,
+ COLOR_BGR5652RGB =15,
+ COLOR_BGRA2BGR565 =16,
+ COLOR_RGBA2BGR565 =17,
+ COLOR_BGR5652BGRA =18,
+ COLOR_BGR5652RGBA =19,
+
+ COLOR_GRAY2BGR565 =20,
+ COLOR_BGR5652GRAY =21,
+
+ COLOR_BGR2BGR555 =22,
+ COLOR_RGB2BGR555 =23,
+ COLOR_BGR5552BGR =24,
+ COLOR_BGR5552RGB =25,
+ COLOR_BGRA2BGR555 =26,
+ COLOR_RGBA2BGR555 =27,
+ COLOR_BGR5552BGRA =28,
+ COLOR_BGR5552RGBA =29,
+
+ COLOR_GRAY2BGR555 =30,
+ COLOR_BGR5552GRAY =31,
+
+ COLOR_BGR2XYZ =32,
+ COLOR_RGB2XYZ =33,
+ COLOR_XYZ2BGR =34,
+ COLOR_XYZ2RGB =35,
+
+ COLOR_BGR2YCrCb =36,
+ COLOR_RGB2YCrCb =37,
+ COLOR_YCrCb2BGR =38,
+ COLOR_YCrCb2RGB =39,
+
+ COLOR_BGR2HSV =40,
+ COLOR_RGB2HSV =41,
+
+ COLOR_BGR2Lab =44,
+ COLOR_RGB2Lab =45,
+
+ COLOR_BayerBG2BGR =46,
+ COLOR_BayerGB2BGR =47,
+ COLOR_BayerRG2BGR =48,
+ COLOR_BayerGR2BGR =49,
+
+ COLOR_BayerBG2RGB =COLOR_BayerRG2BGR,
+ COLOR_BayerGB2RGB =COLOR_BayerGR2BGR,
+ COLOR_BayerRG2RGB =COLOR_BayerBG2BGR,
+ COLOR_BayerGR2RGB =COLOR_BayerGB2BGR,
+
+ COLOR_BGR2Luv =50,
+ COLOR_RGB2Luv =51,
+ COLOR_BGR2HLS =52,
+ COLOR_RGB2HLS =53,
+
+ COLOR_HSV2BGR =54,
+ COLOR_HSV2RGB =55,
+
+ COLOR_Lab2BGR =56,
+ COLOR_Lab2RGB =57,
+ COLOR_Luv2BGR =58,
+ COLOR_Luv2RGB =59,
+ COLOR_HLS2BGR =60,
+ COLOR_HLS2RGB =61,
+
+ COLOR_BayerBG2BGR_VNG =62,
+ COLOR_BayerGB2BGR_VNG =63,
+ COLOR_BayerRG2BGR_VNG =64,
+ COLOR_BayerGR2BGR_VNG =65,
+
+ COLOR_BayerBG2RGB_VNG =COLOR_BayerRG2BGR_VNG,
+ COLOR_BayerGB2RGB_VNG =COLOR_BayerGR2BGR_VNG,
+ COLOR_BayerRG2RGB_VNG =COLOR_BayerBG2BGR_VNG,
+ COLOR_BayerGR2RGB_VNG =COLOR_BayerGB2BGR_VNG,
+
+ COLOR_BGR2HSV_FULL = 66,
+ COLOR_RGB2HSV_FULL = 67,
+ COLOR_BGR2HLS_FULL = 68,
+ COLOR_RGB2HLS_FULL = 69,
+
+ COLOR_HSV2BGR_FULL = 70,
+ COLOR_HSV2RGB_FULL = 71,
+ COLOR_HLS2BGR_FULL = 72,
+ COLOR_HLS2RGB_FULL = 73,
+
+ COLOR_LBGR2Lab = 74,
+ COLOR_LRGB2Lab = 75,
+ COLOR_LBGR2Luv = 76,
+ COLOR_LRGB2Luv = 77,
+
+ COLOR_Lab2LBGR = 78,
+ COLOR_Lab2LRGB = 79,
+ COLOR_Luv2LBGR = 80,
+ COLOR_Luv2LRGB = 81,
+
+ COLOR_BGR2YUV = 82,
+ COLOR_RGB2YUV = 83,
+ COLOR_YUV2BGR = 84,
+ COLOR_YUV2RGB = 85,
+
+ COLOR_BayerBG2GRAY = 86,
+ COLOR_BayerGB2GRAY = 87,
+ COLOR_BayerRG2GRAY = 88,
+ COLOR_BayerGR2GRAY = 89,
+
+ COLOR_YUV420i2RGB = 90,
+ COLOR_YUV420i2BGR = 91,
+
+ COLOR_COLORCVT_MAX =100
+};
+
+
//! converts image from one color space to another
CV_EXPORTS_W void cvtColor( InputArray src, OutputArray dst, int code, int dstCn=0 );
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
import os\r
from common import splitfn\r
\r
term = ( cv2.TERM_CRITERIA_EPS + cv2.TERM_CRITERIA_COUNT, 30, 0.1 )\r
cv2.cornerSubPix(img, corners, (5, 5), (-1, -1), term)\r
if debug_dir:\r
- vis = cv2.cvtColor(img, cv.CV_GRAY2BGR)\r
+ vis = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)\r
cv2.drawChessboardCorners(vis, pattern_size, corners, found)\r
path, name, ext = splitfn(fn)\r
cv2.imwrite('%s/%s_chess.bmp' % (debug_dir, name), vis)\r
\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
-\r
\r
def coherence_filter(img, sigma = 11, str_sigma = 11, blend = 0.5, iter_n = 4):\r
h, w = img.shape[:2]\r
for i in xrange(iter_n):\r
print i,\r
\r
- gray = cv2.cvtColor(img, cv.CV_BGR2GRAY)\r
+ gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)\r
eigen = cv2.cornerEigenValsAndVecs(gray, str_sigma, 3)\r
eigen = eigen.reshape(h, w, 3, 2) # [[e1, e2], v1, v2]\r
x, y = eigen[:,:,1,0], eigen[:,:,1,1]\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
from time import clock\r
import sys\r
\r
hsv_map[:,:,0] = h\r
hsv_map[:,:,1] = s\r
hsv_map[:,:,2] = 255\r
-hsv_map = cv2.cvtColor(hsv_map, cv.CV_HSV2BGR)\r
+hsv_map = cv2.cvtColor(hsv_map, cv2.COLOR_HSV2BGR)\r
cv2.imshow('hsv_map', hsv_map)\r
\r
cv2.namedWindow('hist', 0)\r
\r
small = cv2.pyrDown(frame)\r
\r
- hsv = cv2.cvtColor(small, cv.CV_BGR2HSV)\r
+ hsv = cv2.cvtColor(small, cv2.COLOR_BGR2HSV)\r
dark = hsv[...,2] < 32\r
hsv[dark] = 0\r
h = cv2.calcHist( [hsv], [0, 1], None, [180, 256], [0, 180, 0, 256] )\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
import os\r
\r
image_extensions = ['.bmp', '.jpg', '.jpeg', '.png', '.tif', '.tiff', '.pbm', '.pgm', '.ppm']\r
\r
def on_mouse(self, event, x, y, flags, param):\r
pt = (x, y)\r
- if event == cv.CV_EVENT_LBUTTONDOWN:\r
+ if event == cv2.EVENT_LBUTTONDOWN:\r
self.prev_pt = pt\r
- if self.prev_pt and flags & cv.CV_EVENT_FLAG_LBUTTON:\r
+ if self.prev_pt and flags & cv2.EVENT_FLAG_LBUTTON:\r
for dst, color in zip(self.dests, self.colors_func()):\r
cv2.line(dst, self.prev_pt, pt, color, 5)\r
self.dirty = True\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
from common import make_cmap\r
\r
help_message = '''USAGE: distrans.py [<image>]\r
import cv2\r
-import cv2.cv as cv\r
import video\r
import sys\r
\r
cap = video.create_capture(fn)\r
while True:\r
flag, img = cap.read()\r
- gray = cv2.cvtColor(img, cv.CV_BGR2GRAY)\r
+ gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)\r
thrs1 = cv2.getTrackbarPos('thrs1', 'edge')\r
thrs2 = cv2.getTrackbarPos('thrs2', 'edge')\r
edge = cv2.Canny(gray, thrs1, thrs2, apertureSize=5)\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
from common import anorm\r
\r
help_message = '''SURF image match \r
vis = np.zeros((max(h1, h2), w1+w2), np.uint8)\r
vis[:h1, :w1] = img1\r
vis[:h2, w1:w1+w2] = img2\r
- vis = cv2.cvtColor(vis, cv.CV_GRAY2BGR)\r
+ vis = cv2.cvtColor(vis, cv2.COLOR_GRAY2BGR)\r
\r
if H is not None:\r
corners = np.float32([[0, 0], [w1, 0], [w1, h1], [0, h1]])\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
\r
help_message = '''USAGE: floodfill.py [<image>]\r
\r
\r
def onmouse(event, x, y, flags, param):\r
global seed_pt\r
- if flags & cv.CV_EVENT_FLAG_LBUTTON:\r
+ if flags & cv2.EVENT_FLAG_LBUTTON:\r
seed_pt = x, y\r
update()\r
\r
vis = frame.copy()\r
if len(tracks) > 0:\r
p0 = np.float32([tr[-1] for tr in tracks]).reshape(-1, 1, 2)\r
- img0 = cv2.cvtColor(prev_frame, cv.CV_BGR2GRAY)\r
- img1 = cv2.cvtColor(frame, cv.CV_BGR2GRAY)\r
+ img0 = cv2.cvtColor(prev_frame, cv2.COLOR_BGR2GRAY)\r
+ img1 = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)\r
if old_mode:\r
p1, st, err, dt = calc_flow_old(img0, img1, p0)\r
else:\r
if ch == 27:\r
break\r
if ch == ord(' ') or len(tracks) == 0:\r
- gray = cv2.cvtColor(frame, cv.CV_BGR2GRAY)\r
+ gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)\r
p = cv2.goodFeaturesToTrack(gray, **feature_params)\r
p = [] if p is None else p.reshape(-1, 2)\r
tracks = []\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
import video\r
from common import nothing, clock, draw_str\r
\r
while True:\r
ret, frame = cam.read()\r
frame_diff = cv2.absdiff(frame, prev_frame)\r
- gray_diff = cv2.cvtColor(frame_diff, cv.CV_BGR2GRAY)\r
+ gray_diff = cv2.cvtColor(frame_diff, cv2.COLOR_BGR2GRAY)\r
thrs = cv2.getTrackbarPos('threshold', 'motempl')\r
ret, motion_mask = cv2.threshold(gray_diff, thrs, 1, cv2.THRESH_BINARY)\r
timestamp = clock()\r
vis = frame_diff.copy()\r
elif visual_name == 'motion_hist':\r
vis = np.uint8(np.clip((motion_history-(timestamp-MHI_DURATION)) / MHI_DURATION, 0, 1)*255)\r
- vis = cv2.cvtColor(vis, cv.CV_GRAY2BGR)\r
+ vis = cv2.cvtColor(vis, cv2.COLOR_GRAY2BGR)\r
elif visual_name == 'grad_orient':\r
hsv[:,:,0] = mg_orient/2\r
hsv[:,:,2] = mg_mask*255\r
- vis = cv2.cvtColor(hsv, cv.CV_HSV2BGR)\r
+ vis = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)\r
\r
for i, rect in enumerate([(0, 0, w, h)] + list(seg_bounds)):\r
x, y, rw, rh = rect\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
\r
def detect(img, cascade):\r
rects = cascade.detectMultiScale(img, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))\r
return rects\r
\r
def detect_turned(img, cascade):\r
- img = cv2.cvtColor(img, cv.CV_BGR2GRAY)\r
+ img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)\r
img = cv2.equalizeHist(img)\r
\r
img_t = cv2.transpose(img)\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
import video\r
\r
help_message = '''\r
fx, fy = flow[y,x].T\r
lines = np.vstack([x, y, x+fx, y+fy]).T.reshape(-1, 2, 2)\r
lines = np.int32(lines + 0.5)\r
- vis = cv2.cvtColor(img, cv.CV_GRAY2BGR)\r
+ vis = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)\r
cv2.polylines(vis, lines, 0, (0, 255, 0))\r
for (x1, y1), (x2, y2) in lines:\r
cv2.circle(vis, (x1, y1), 1, (0, 255, 0), -1)\r
hsv[...,0] = ang*(180/np.pi/2)\r
hsv[...,1] = 255\r
hsv[...,2] = np.minimum(v*4, 255)\r
- bgr = cv2.cvtColor(hsv, cv.CV_HSV2BGR)\r
+ bgr = cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)\r
return bgr\r
\r
def warp_flow(img, flow):\r
\r
cam = video.create_capture(fn)\r
ret, prev = cam.read()\r
- prevgray = cv2.cvtColor(prev, cv.CV_BGR2GRAY)\r
+ prevgray = cv2.cvtColor(prev, cv2.COLOR_BGR2GRAY)\r
show_hsv = False\r
show_glitch = False\r
cur_glitch = prev.copy()\r
\r
while True:\r
ret, img = cam.read()\r
- gray = cv2.cvtColor(img, cv.CV_BGR2GRAY)\r
+ gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)\r
flow = cv2.calcOpticalFlowFarneback(prevgray, gray, None, 0.5, 3, 15, 3, 5, 1.2, 0)\r
prevgray = gray\r
\r
\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
\r
ply_header = '''ply\r
format ascii 1.0\r
[0, 0, 0, -f], # so that y-axis looks up\r
[0, 0, 1, 0]])\r
points = cv2.reprojectImageTo3D(disp, Q)\r
- colors = cv2.cvtColor(imgL, cv.CV_BGR2RGB)\r
+ colors = cv2.cvtColor(imgL, cv2.COLOR_BGR2RGB)\r
mask = disp > disp.min()\r
out_points = points[mask]\r
out_colors = colors[mask]\r
import numpy as np\r
import cv2\r
-import cv2.cv as cv\r
from common import Sketcher\r
\r
help_message = '''\r