使用Tensorflow+OpenCV构建会玩石头剪刀布的AI

磐创AI
关注

简介

这个项目的基础是深度学习和图像分类,目的是创建一个简单而有趣的石头剪刀布游戏。首先,这个项目是我在5月份的COVID19隔离期中无聊的产物,希望当你读到这个时,一切都恢复正常了。我的目的是通过这篇文章用简单的术语向初学者解释这个项目的基本原理。让我们开始吧!在构建任何类型的深度学习应用程序时,有三个主要步骤:收集和处理数据建立一个合适的人工智能模型部署使用整个项目都引用了我的Github repo,并与之携手并进,所以请做好参考准备。

收集我们的数据

任何深度学习模型的基础都是数据,任何一位机器学习工程师都会同意这一点,在ML中,数据远比算法本身重要。我们需要收集石头,布和剪刀的符号图像,我没有下载别人的数据并在上面进行训练,而是制作了自己的数据集,鼓励你也建立自己的数据集。之后尝试更改数据并重新训练模型,以查看数据对深度学习模型究竟有怎样的影响。

PATH = os.getcwd()+'\'

cap = cv2.VideoCapture(0)

label = sys.argv[1]

SAVE_PATH = os.path.join(PATH, label)

try:

os.mkdir(SAVE_PATH)

except FileExistsError:

pass

ct = int(sys.argv[2])

maxCt = int(sys.argv[3])+1

print("Hit Space to Capture Image")

while True:

ret, frame = cap.read()

cv2.imshow('Get Data : '+label,frame[50:350,100:450])

if cv2.waitKey(1) & 0xFF == ord(' '):

cv2.imwrite(SAVE_PATH+'\'+label+'{}.jpg'.format(ct),frame[50:350,100:450])

print(SAVE_PATH+'\'+label+'{}.jpg Captured'.format(ct))

ct+=1

if ct >= maxCt:

break

cap.release()

cv2.destroyAllWindows()

声明: 本文由入驻OFweek维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。
侵权投诉

下载OFweek,一手掌握高科技全行业资讯

还不是OFweek会员,马上注册
打开app,查看更多精彩资讯 >
  • 长按识别二维码
  • 进入OFweek阅读全文
长按图片进行保存