From 07a4e52093123c9c3f5f174ccc26ac189ad8052e Mon Sep 17 00:00:00 2001 From: Alexander Mordvintsev Date: Thu, 9 Jun 2011 08:21:37 +0000 Subject: [PATCH] video synth uses cv2.randn for noise -- much faster than np.random.normal --- samples/python2/video.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/samples/python2/video.py b/samples/python2/video.py index 5cbcb91c52..762f01a849 100644 --- a/samples/python2/video.py +++ b/samples/python2/video.py @@ -20,11 +20,13 @@ class VideoSynth(object): def read(self, dst=None): w, h = self.frame_size - buf = np.zeros((h, w, 3), np.uint8) - if self.bg is not None: - buf[:] = self.bg + if self.bg is None: + buf = np.zeros((h, w, 3), np.uint8) + else: + buf = self.bg.copy() if self.noise > 0.0: - noise = np.random.normal(scale = 255*self.noise, size=(h, w, 3)) + noise = np.zeros((h, w, 3), np.int8) + cv2.randn(noise, np.zeros(3), np.ones(3)*255*self.noise) buf = cv2.add(buf, noise, dtype=cv2.CV_8UC3) return True, buf