项目进度(十)

来源:互联网 发布:英文域名例子 编辑:程序博客网 时间:2024/05/22 06:09

接下来果蔬秤解决的是关于输入的问题,通过摄像头来捕获拍摄的果蔬,这是需要解决的一个问题。

搭配好Python-opencv环境后,写一段python代码进行测试:

[python] view plain copy
  1. import numpy as np  
  2. import cv2  
  3.   
  4. img = cv2.imread('askbutton.png'0)  
  5. cv2.imshow('image', img)  
  6. cv2.waitKey(0)  
  7. cv2.destroyAllWindows()  

可以发现成功读取了askbutton这个图片,如下图所示:



接下来开始视频的捕获,python代码如下:

[html] view plain copy
  1. import numpy as np  
  2. import cv2  
  3.   
  4. cap = cv2.VideoCapture(0)  
  5.   
  6. while(True):  
  7.     # Capture frame-by-frame  
  8.     ret, frame = cap.read()  
  9.   
  10.     # Our operations on the frame come here  
  11.     gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)  
  12.   
  13.     # Display the resulting frame  
  14.     cv2.imshow('frame',gray)  
  15.     if cv2.waitKey(1) & 0xFF == ord('q'):  
  16.         break  
  17.   
  18. # When everything done, release the capture  
  19. cap.release()  
  20. cv2.destroyAllWindows()  


运行,得到的结果如下图:

获取的是视频的灰度图,可以以正常的帧率进行捕获,那么程序的输入便成功的获取,输出为向arduino发送的串口数据。那么接下来的核心问题就是关于果蔬种类的识别程序了,用接下来的时间去进行这项工作。

大体的思路为通过深度学习训练好模型,然后提取出测试样本的特征,把这些特征通过分类器进行分类,进行到这里,就是一个相对简单的分类(classification)问题了。