回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我完全不明白为什么在看了文档之后不能用OpenCV画一个椭圆。</p>
<p>首先我用的是CV 2.4.9</p>
<pre><code>>>> cv2.__version__
'2.4.9'
>>>
</code></pre>
<p>其次,我试图使用以下内容:</p>
<pre><code>>>> help(cv2.ellipse)
Help on built-in function ellipse in module cv2:
ellipse(...)
ellipse(img, center, axes, angle, startAngle, endAngle, color[, thickness[,
lineType[, shift]]]) -> None or ellipse(img, box, color[, thickness[, lineType
]]) -> None
</code></pre>
<p>我的椭圆如下:</p>
<pre><code>cx,cy = 201,113
ax1,ax2 = 37,27
angle = -108
center = (cx,cy)
axes = (ax1,ax2)
cv2.ellipse(frame, center, axes, angle, 0 , 360, (255,0,0), 2)
</code></pre>
<p>但是,跑步给了我以下</p>
<pre><code>>>> cv2.ellipse(frame,center,axes,angle,0,360, (255,0,0), 2)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: ellipse() takes at most 5 arguments (8 given)
>>>
</code></pre>
<p>帮忙?</p>
<hr/>
<p>编辑:<br/>
我想用下面的作为框架</p>
<pre><code>cap = cv2.VideoCapture(fileLoc)
frame = cap.read()
</code></pre>
<p>显然可以通过以下方法来修复</p>
<pre><code>pil_im = Image.fromarray(frame)
cv2.ellipse(frame,center,axes,angle,0,360,(255,0,0), 2)
pil_im = Image.fromarray(raw_image)
pil_im.save('C:/Development/export/foo.jpg', 'JPEG')
</code></pre>