提交 6977a895 编写于 作者: A Alexander Mordvintsev

descriptions for watershed.py and video.py

上级 d015bf6f
......@@ -63,6 +63,8 @@ def update(_=None):
cv2.imshow('fit line', img)
if __name__ == '__main__':
print __doc__
cv2.namedWindow('fit line')
cv2.createTrackbar('noise', 'fit line', 3, 50, update)
cv2.createTrackbar('point n', 'fit line', 100, 500, update)
......
'''
Video capture sample.
Sample shows how VideoCapture class can be used to acquire video
frames from a camera of a movie file. Also the sample provides
an example of procedural video generation by an object, mimicking
the VideoCapture interface (see Chess class).
'create_capture' is a convinience function for capture creation,
falling back to procedural video in case of error.
Usage:
video.py [--shotdir <shot path>] [source0] [source1] ...'
sourceN is an
- integer number for camera capture
- name of video file
- synth:<params> for procedural video
Synth examples:
synth:bg=../cpp/lena.jpg:noise=0.1
synth:class=chess:bg=../cpp/lena.jpg:noise=0.1:size=640x480
Keys:
ESC - exit
SPACE - save current frame to <shot path> directory
'''
import numpy as np
import cv2
from time import clock
......@@ -100,8 +129,7 @@ presets = dict(
def create_capture(source = 0, fallback = presets['chess']):
'''
source: <int> or '<int>|<filename>|synth [:<param_name>=<value> [:...]]'
'''source: <int> or '<int>|<filename>|synth [:<param_name>=<value> [:...]]'
'''
source = str(source).strip()
chunks = source.split(':')
......@@ -136,9 +164,7 @@ if __name__ == '__main__':
import sys
import getopt
print 'USAGE: video.py [--shotdir <dir>] [source0] [source1] ...'
print "source: '<int>' or '<filename>' or 'synth:<params>'"
print
print __doc__
args, sources = getopt.getopt(sys.argv[1:], '', 'shotdir=')
args = dict(args)
......@@ -146,8 +172,6 @@ if __name__ == '__main__':
if len(sources) == 0:
sources = [ 0 ]
print 'Press SPACE to save current frame'
caps = map(create_capture, sources)
shot_idx = 0
while True:
......
import numpy as np
import cv2
from common import Sketcher
'''
Watershed segmentation
=========
This program demonstrates the watershed segmentation algorithm
in OpenCV: watershed().
help_message = '''
USAGE: watershed.py [<image>]
Usage
-----
watershed.py [image filename]
Use keys 1 - 7 to switch marker color
Keys
----
1-7 - switch marker color
SPACE - update segmentation
r - reset
a - switch autoupdate
a - toggle autoupdate
ESC - exit
'''
import numpy as np
import cv2
from common import Sketcher
class App:
def __init__(self, fn):
self.img = cv2.imread(fn)
......@@ -60,5 +73,5 @@ if __name__ == '__main__':
import sys
try: fn = sys.argv[1]
except: fn = '../cpp/fruits.jpg'
print help_message
print __doc__
App(fn).run()
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册