red = (0, 0, 255)\r
for (x1, y1), (x2, y2), inlier in zip(np.int32(p1), np.int32(p2), status):\r
col = [red, green][inlier]\r
- if not inlier:\r
+ if inlier:\r
cv2.line(vis, (x1, y1), (x2+w1, y2), col)\r
- cv2.circle(vis, (x1, y1), 2, col, -1)\r
- cv2.circle(vis, (x2+w1, y2), 2, col, -1)\r
+ cv2.circle(vis, (x1, y1), 2, col, -1)\r
+ cv2.circle(vis, (x2+w1, y2), 2, col, -1)\r
+ else:\r
+ r = 2\r
+ thickness = 3\r
+ cv2.line(vis, (x1-r, y1-r), (x1+r, y1+r), col, thickness)\r
+ cv2.line(vis, (x1-r, y1+r), (x1+r, y1-r), col, thickness)\r
+ cv2.line(vis, (x2+w1-r, y2-r), (x2+w1+r, y2+r), col, thickness)\r
+ cv2.line(vis, (x2+w1-r, y2+r), (x2+w1+r, y2-r), col, thickness)\r
return vis\r
\r
if __name__ == '__main__':\r
import numpy as np\r
+import math\r
from numpy import random\r
import cv2\r
\r
-\r
def make_gaussians(cluster_n, img_size):\r
points = []\r
ref_distrs = []\r
def draw_gaussain(img, mean, cov, color):\r
x, y = np.int32(mean)\r
w, u, vt = cv2.SVDecomp(cov)\r
- ang = np.rad2deg( np.arctan2(u[1, 0], u[0, 0]) )\r
+ ang = np.arctan2(u[1, 0], u[0, 0])*(180/math.pi)\r
s1, s2 = np.sqrt(w)*3.0\r
cv2.ellipse(img, (x, y), (s1, s2), ang, 0, 360, color, 1, cv2.CV_AA)\r
\r
import numpy as np\r
+import math\r
import cv2, cv\r
import video\r
\r
ang = np.arctan2(fy, fx) + np.pi\r
v = np.sqrt(fx*fx+fy*fy)\r
hsv = np.zeros((h, w, 3), np.uint8)\r
- hsv[...,0] = np.rad2deg(ang)/2\r
+ hsv[...,0] = ang*(180/math.pi/2)\r
hsv[...,1] = 255\r
hsv[...,2] = np.minimum(v*4, 255)\r
bgr = cv2.cvtColor(hsv, cv.CV_HSV2BGR)\r