在追小球的云台这个例子中,我是用的自己的二维云台进行模拟,当目标在二维平面移动时,舵机会跟着进行转动,想问下有没有什么函数能求舵机的转动角度?
r52i 发布的帖子
-
直线和颜色同时识别?
代码如下:
import sensor, image, timesensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QQVGA)
sensor.skip_frames(time = 2000)
sensor.set_auto_gain(False) # must be turned off for color tracking
sensor.set_auto_whitebal(False) # must be turned off for color tracking
clock = time.clock()min_degree = 45
max_degree = 135while(True):
clock.tick()
img = sensor.snapshot().lens_corr(1.8)
for l in img.find_lines(threshold = 1000, theta_margin = 50, rho_margin = 50):
if (min_degree <= l.theta()) and (l.theta() <= max_degree):# print(l) statistics = img.get_statistics()#像素颜色统计 #(26, 54, -51, 50, -90, -43)是蓝色的阈值,所以当区域内的众数(也就是最多的颜色),范围在这个阈值内,就说明是红色的圆。 #l_mean(),a_mean(),b_mean()是L通道,A通道,B通道的中位数。 if 26<statistics.l_mode()<54 and -51<statistics.a_mode()<50 and -90<statistics.b_mode()<-43:#if the circle is red img.draw_line(l.line(), color = (255, 255, 255))#识别到蓝色直线用红色的直线表示出来 print(l.y1()) print("YES") else: img.draw_line(l.line(), color = (255, 0, 0)) #将非蓝色的线用白色的直线表示出来 print("NO")
有几个疑问:
1.目前不能做到同时识别颜色和直线,阈值是没问题的,是代码出现什么问题了吗?
2.识别直线的时候,图像里的直线变化很快是为什么呢?
-
运行openmv时芯片很烫
运行颜色识别程序时,差不多两三分钟以后openmv芯片就有点烫了,发烫是不是说明程序有问题?到时候需要长时间运行openmv,应该十几分钟,会对openmv 有影响吗?有没有什么办法解决呢?
-
有没有什么办法减小光线对openmv识别颜色的影响吗?
有没有什么办法减小光线对openmv识别颜色的影响吗?比如测距时,环境光线不可避免出现一点波动,这对openmv识别目标有一定影响的,也会对所测得的距离产生一定误差。有没有什么办法可以减小这种影响呢,适当改变阈值范围有用吗?
-
光学测距可以实现选择性测距吗?
视频里举的ToF光学测距的例子,是将一整个手掌放在镜头前。
1.如果障碍物很小或者很窄,可以识别到吗?这是不是和参数的设置有关?
2.如果镜头前既有墙,又有一根杆,可以选择测量杆的距离而不测量墙的距离吗?如果可以该怎么做呢?