<div ><div ><div ><div ><div ><div ><div ><p >
<p >这个问题常常会在最不方便的时候出现在你的脑子里。<p >有时是当你刚刚走出家门的时候。 有时是当你在上班路上的时候。 有时是当你坐在飞机上准备度个长假的时候……<p >解决这个问题的方法是多种多样的:<ol ><li ><p >橡皮筋的方法<li ><p >大声说或唱出来(就像 Samuel L. Jackson 一样)<li ><p >当你离开家去度假的时候,给烤箱在内的电器列个清单或做个标记。 或者,我们也许有更好的做法……<p >在本教程中,我们会尝试利用技术手段解决这个问题。<p >Github 里有完整代码。<p ><p ><p >当红色灯灭的时候,烤箱是关着的:<p ><p ><span >预备条件<p >确保你的电脑上安装了以下应用:<ol ><li ><p >OpenCV 3.0<li ><p >Python 2.7<li ><p >Numpy 1.9<li ><p ><blockquote ><p >importargparse<p >importnumpy asnp<p >importcv2<p ><span >载入图片<blockquote ><p >image = cv2.imread(image_path)<p ><span >图片降噪<p >我们为了给图片降噪,需要对输入图片进行平滑处理。这样会更容易在图片中定位目标。使用 medianBlur 函数,把光圈大小定为 3 。数字越大意味着图像会越模糊。<blockquote ><p >blur_image = cv2.medianBlur(image,3)<p ><p ><p >检测图片中的颜色<p >为了检测我们想要的颜色,我们可以查看烤箱灯图片中颜色的直方图。<p ><p ><p >我们可以看出,红色在图片中占统治地位。红色有两个高峰 —— 一个幅度高,一个幅度低。这些颜色值转变为色度范围从 0 到10,以及从 160 到 180 (针对红色)。<p ><p >=<p ><p ><p >接下来把这些图片合并在一起,以抓取所有红色色度。<blockquote ><p >full_image = cv2.adDWeighted(lower_red_hue,1.0,higher_red_hue,0.0)<p >结果如下:<p ><p ><span >发现图片中的圆圈<p ><p ><span >结果<p >此时就可以检查是否有圆圈了。如果有就意味着至少有一个烤箱灯亮着。如果找不到圆圈就意味着没有灯亮,烤箱关着。<p >为了证明此结论,我们可以用下述代码在原图中画圆圈:<blockquote ><p ># Draw the circles on the original image<p >circles = np.round(circles[0,:]).astype("int")<p >for(center_x,center_y,radius)incircles:<p >cv2.circle(image,(center_x,center_y),radius,(0,0),4)<p >结果如下:<p ><p ><p >欢迎大家关注我的博客或者公众号:https://home.cnblogs.com/u/Python1234/ Python学习交流<p ><span >欢迎加入千人交流学习群:125240963总结
以上是内存溢出为你收集整理的忘记关烤箱了是什么鬼?用Python和OpenCV 来帮你关烤箱!全部内容,希望文章能够帮你解决忘记关烤箱了是什么鬼?用Python和OpenCV 来帮你关烤箱!所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)