追踪灰度中的圆形,利用openmv生成简单易懂出错率低的代码
时间: 2023-08-21 16:04:17 浏览: 56
可以使用OpenMV的Blob Detection模块来追踪灰度图像中的圆形。以下是一个简单的示例代码,它使用Blob Detection模块来查找半径在10到50像素之间的圆形:
```python
import sensor, image, time
# 初始化相机和Blob Detection模块
sensor.reset()
sensor.set_pixformat(sensor.GRAYSCALE)
sensor.set_framesize(sensor.QVGA)
sensor.skip_frames(time=2000)
sensor.set_auto_gain(False)
sensor.set_auto_whitebal(False)
clock = time.clock()
threshold = (0, 100)
blobs = []
# 循环查找圆形
while(True):
clock.tick()
img = sensor.snapshot()
blobs = img.find_blobs(threshold, pixels_threshold=200, area_threshold=200)
for blob in blobs:
# 判断是否为圆形
is_circle = abs(blob.w() / blob.h() - 1) < 0.2 and abs(blob.polarity()) > 0.5
if is_circle:
# 在圆心处绘制十字线
img.draw_cross(blob.cx(), blob.cy())
print("FPS:", clock.fps())
```
在上面的代码中,我们首先初始化相机和Blob Detection模块。然后在一个循环中,我们捕获一帧图像并使用`find_blobs()`方法来查找图像中的所有斑点。对于每个斑点,我们计算其宽高比和极性,并使用这些特征来判断该斑点是否为圆形。如果是圆形,我们在其圆心处绘制一个十字线。最后,我们输出帧率以便调试。
请注意,Blob Detection模块可能会在图像中找到多个斑点,而不是仅仅一个圆形。因此,在实际使用时,您需要根据应用程序的需要进行适当的过滤和筛选。
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)