CN106426165A - 一种人机对弈五子棋机器人控制方法 - Google Patents
一种人机对弈五子棋机器人控制方法 Download PDFInfo
- Publication number
- CN106426165A CN106426165A CN201610863757.2A CN201610863757A CN106426165A CN 106426165 A CN106426165 A CN 106426165A CN 201610863757 A CN201610863757 A CN 201610863757A CN 106426165 A CN106426165 A CN 106426165A
- Authority
- CN
- China
- Prior art keywords
- image
- chess
- chess piece
- chessboard
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1669—Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
一种人机对弈五子棋机器人控制方法,首先,通过相机获取棋盘图像,并计算得到每个棋子放置点的坐标;其次通过相机获取当前图像,判断若有连成五个的白色棋子,则白方获胜,游戏结束;若没有,则获取人移动棋子之后的图像,判断若有连成五个的黑色棋子,则黑方获胜,游戏结束;若没有,则将两幅图像的对应位置的像素值相减,得到移动棋子的图像,并得到移动棋子坐标,将坐标信息送给机器人并利用下棋算法做判断,移动下一个棋子,并进行循环操作;本发明具有检测速度快、准确度高的特点。
Description
技术领域
本发明涉及机器人控制技术领域,尤其涉及一种人机对弈五子棋机器人控制方法。
背景技术
五子棋是起源于中国古代的传统黑白棋种之一,是一项比较流行的博弈游戏。它规则简单,富有趣味性,既有简单易学的特性,为人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛,能增强思维能力,提高智力,而且富含哲理,有助于修身养性。
一般的五子棋必须有两个人才可以对弈,而且必须有实际的棋盘和棋子,这种方式有很好的互动性,但是一个人的时候无法进行游戏。后来出现了人与计算机对弈的形式,这种方式的优点在于独自一人的情况下也能进行五子棋游戏,同时不需要实际的棋盘和棋子,极大的减少了人与人对弈的限制,但是,这种方式很大程度地减少了人的互动性,没有更好的用户体验。而利用图像的方式得到棋子的坐标,并控制机器人与人进行对弈,检测速度快、准确度高,既对人没有限制,而且大大的提高了用户体验。
发明内容
为了克服现有技术的不足,本发明提供一种人机对弈五子棋机器人控制方法,利用数字图像处理方法得到棋子的位置坐标,并利用机器人完成下棋的动作来实现人机对弈,具有检测速度快、准确度高的特点。
为实现上述目的,本发明通过以下技术方案实现:
一种人机对弈五子棋机器人控制方法,具体实施步骤如下:
Step 1、通过相机3拍照获取整个空棋盘2的图像,获得棋盘2四个顶点的坐标,即为A(x1,y1),B(x2,y2),C(x3,y3),D(x4,y4),并计算得到棋盘的边长为L=x2-x1;假设人为黑色棋子,机器人1为白色棋子,且人为先下者;
Step 2、标准五子棋棋盘为15*15的正方形,共有225个交叉点,因此棋盘格的边长为a=L/16;棋盘2中任意一点的坐标为(x1+n*a,y1+m*a),n为棋子所在列数,m为棋子所在行数;
Step 3、通过相机3进行拍照获取当前图像,记为Image 1;
Step 4、对Image 1检测判断在横向、纵向、斜方向是否有连成五个的白色棋子;若有,则白方获胜,游戏结束;若没有,则进行Step 5;
Step 5、等待人移动一个棋子之后,通过相机3拍照获取当前图像,并进行预处理,记为Image2;
Step 6、对Image 2检测判断在横向、纵向、斜方向是否有连成五个的黑色棋子;若有,则黑方获胜,游戏结束;若没有,则进行Step 7;
Step 7、将Image 2图像上的第k个点的灰度值I2(k)与Image 1图像上的第k个点的灰度值I1(k),对应相减得到I(k):
I(k)=I2(k)-I1(k);
Step8、将像素值I(k)与阈值σ进行比较,若I(k)≥σ,则像素值G(k)=0;若I(k)<σ,则G(k)=255,得到二值化图像Image 3,图像中只有人移动了的黑色棋子:
Step 9、计算Image 3在区间[y1,y3]和[x1,x2]的垂直和水平像素灰度积分函数分别为V(x)和H(y),I(x,y)为Image 3中像素点的灰度值:
Step 10、找到V(x)的极大值点即为棋子的横坐标x0,找到H(y)的极大值点即为棋子的纵坐标y0,并利用公式求出黑色棋子所在的列n=(x0-x1)/a和行m=(y0-y1)/a;
Step 11、根据棋子位置(n,m)和下棋算法,得出最佳落子位置(p,q),并利用公式计算出最佳落子的坐标(x1+p*a,y1+q*a),记为Position 2,并传送给机器人1;
Step 12、机器人1利用吸盘在棋子盒里吸起一个白色棋子,放到Position 2处;
Step 13、放置完成后,机器人1移动到初始位置Position 0处;再循环进行Step3,直到游戏结束。
所述的Step8中σ取为70。
本发明的有益效果:
本发明实验结果表明,本发明涉及的利用背景相减得到移动棋子坐标的方法,可以实现人机对弈,具有自动、速度快、准确度高、互动性强的特点,能准确地得到人的移动棋子坐标,并根据下棋算法得出最佳落子位置,控制机器人形象地完成人机对弈,提高用户体验。
附图说明
图1为本发明的机器人装置的整体结构示意图。
图2为本发明的棋盘示意图。
图3为本发明的原理框图。
具体实施方式
下面参照附图并结合实例详述本发明。
参见图1,本发明的机器人装置包括棋盘2、相机3和机器人1;相机3安装在棋盘2的正上方,机器人1开始不在相机3的视野中,拍照完成后,进行处理,将信息送给机器人1,机器人1再执行相应动作。
参见图2,棋盘2为15*15的标准五子棋棋盘。
参见图3,一种人机对弈五子棋机器人控制方法,具体实施步骤如下:
Step 1、通过相机3拍照获取整个空棋盘2的图像,获得棋盘2四个顶点的坐标,即为A(x1,y1),B(x2,y2),C(x3,y3),D(x4,y4),并计算得到棋盘的边长为L=x2-x1;假设人为黑色棋子,机器人1为白色棋子,且人为先下者;
Step 2、标准五子棋棋盘为15*15的正方形,共有225个交叉点,因此棋盘格的边长为a=L/16;棋盘2中任意一点的坐标为(x1+n*a,y1+m*a),n为棋子所在列数,m为棋子所在行数;
Step 3、通过相机3进行拍照获取当前图像,记为Image 1;
Step 4、对Image 1检测判断在横向、纵向、斜方向是否有连成五个的白色棋子;若有,则白方获胜,游戏结束;若没有,则进行Step 5;
Step 5、等待人移动一个棋子之后,通过相机3拍照获取当前图像,并进行预处理,记为Image2;
Step 6、对Image 2检测判断在横向、纵向、斜方向是否有连成五个的黑色棋子;若有,则黑方获胜,游戏结束;若没有,则进行Step 7;
Step 7、将Image 2图像上的第k个点的灰度值I2(k)与Image 1图像上的第k个点的灰度值I1(k)对应相减得到I(k):
I(k)=I2(k)-I1(k);
Step8、将像素值I(k)与阈值σ进行比较,若I(k)≥σ,则像素值G(k)=0;若I(k)<σ,则G(k)=255,得到二值化图像Image 3,图像中只有人移动了的黑色棋子:
Step 9、计算Image 3在区间[y1,y3]和[x1,x2]的垂直和水平像素灰度积分函数分别为V(x)和H(y),I(x,y)为Image 3中像素点的灰度值:
Step 10、找到V(x)的极大值点即为棋子的横坐标x0,找到H(y)的极大值点即为棋子的纵坐标y0,并利用公式求出黑色棋子所在的列n=(x0-x1)/a和行m=(y0-y1)/a;
Step 11、根据棋子位置(n,m)和下棋算法,得出最佳落子位置(p,q),并利用公式计算出最佳落子的坐标(x1+p*a,y1+q*a),记为Position 2,并传送给机器人1;
Step 12、机器人1利用吸盘在棋子盒里吸起一个白色棋子,放到Position 2处;
Step 13、放置完成后,机器人1移动到初始位置Position 0处;再循环进行Step3,直到游戏结束。
所述的Step8中的σ取为70。
Claims (2)
1.一种人机对弈五子棋机器人控制方法,其特征在于,具体实施步骤如下:
Step 1、通过相机(3)拍照获取整个空棋盘(2)的图像,获得棋盘四个顶点的坐标,即为A(x1,y1),B(x2,y2),C(x3,y3),D(x4,y4),并计算得到棋盘的边长为L=x2-x1;假设人为黑色棋子,机器人(1)为白色棋子,且人为先下者;
Step 2、标准五子棋棋盘为15*15的正方形,共有225个交叉点,因此棋盘格的边长为a=L/16;棋盘(2)中任意一点的坐标为(x1+n*a,y1+m*a),n为棋子所在列数,m为棋子所在行数;
Step 3、通过相机(3)进行拍照获取当前图像,记为Image 1;
Step 4、对Image 1检测判断在横向、纵向、斜方向是否有连成五个的白色棋子;若有,则白方获胜,游戏结束;若没有,则进行Step 5;
Step 5、等待人移动一个棋子之后,通过相机(3)拍照获取当前图像,并进行预处理,记为Image2;
Step 6、对Image 2检测判断在横向、纵向、斜方向是否有连成五个的黑色棋子;若有,则黑方获胜,游戏结束;若没有,则进行Step 7;
Step 7、将Image 2图像上的第k个点的灰度值I2(k)与Image 1图像上的第k个点的灰度值I1(k)对应相减得到I(k):
I(k)=I2(k)-I1(k);
Step8、将像素值I(k)与阈值σ进行比较,若I(k)≥σ,则像素值G(k)=0;若I(k)<σ,则G(k)=255,得到二值化图像Image 3,图像中只有人移动了的黑色棋子:
Step 9、计算Image 3在区间[y1,y3]和[x1,x2]的垂直和水平像素灰度积分函数分别为V(x)和H(y),I(x,y)为Image 3中像素点的灰度值:
Step 10、找到V(x)的极大值点即为棋子的横坐标x0,找到H(y)的极大值点即为棋子的纵坐标y0,并利用公式求出黑色棋子所在的列n=(x0-x1)/a和行m=(y0-y1)/a;
Step 11、根据棋子位置(n,m)和下棋算法,得出最佳落子位置(p,q),并利用公式计算出最佳落子的坐标(x1+p*a,y1+q*a),记为Position 2,并传送给机器人(1);
Step 12、机器人(1)利用吸盘在棋子盒里吸起一个白色棋子,放到Position 2处;
Step 13、放置完成后,机器人(1)移动到初始位置Position 0处;再循环进行Step 3,直到游戏结束。
2.根据权利要求1所述的一种人机对弈五子棋机器人控制方法,其特征在于,所述的Step8中σ取为70。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610863757.2A CN106426165A (zh) | 2016-09-29 | 2016-09-29 | 一种人机对弈五子棋机器人控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610863757.2A CN106426165A (zh) | 2016-09-29 | 2016-09-29 | 一种人机对弈五子棋机器人控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106426165A true CN106426165A (zh) | 2017-02-22 |
Family
ID=58169935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610863757.2A Pending CN106426165A (zh) | 2016-09-29 | 2016-09-29 | 一种人机对弈五子棋机器人控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106426165A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301650A (zh) * | 2017-06-28 | 2017-10-27 | 湖南瑞森可机器人科技有限公司 | 四连棋棋盘图像处理方法、系统及人机对弈系统 |
CN107497117A (zh) * | 2017-08-18 | 2017-12-22 | 湖南瑞森可机器人科技有限公司 | 翻转棋棋盘图像处理方法、系统及人机对弈系统 |
CN107648833A (zh) * | 2017-09-15 | 2018-02-02 | 湖南大学 | 一种基于机器视觉的非接触式人机对弈控制方法及系统 |
CN107813321A (zh) * | 2017-11-27 | 2018-03-20 | 安徽工业大学 | 一种五子棋机器人控制方法 |
CN107909889A (zh) * | 2017-11-23 | 2018-04-13 | 陕西科技大学 | 一种基于视觉引导的五子棋人机对弈实验教学系统 |
CN109421052A (zh) * | 2017-08-24 | 2019-03-05 | 河海大学 | 一种基于人工智能的五子棋对弈机器人 |
CN109876422A (zh) * | 2019-03-14 | 2019-06-14 | 河海大学常州校区 | 一种基于霍夫变换的五子连珠判断方法 |
CN110275739A (zh) * | 2019-07-26 | 2019-09-24 | 陕西师范大学 | 一种在常数时间内判断五子棋禁手和棋形属性的方法 |
CN113893520A (zh) * | 2021-10-26 | 2022-01-07 | 上海冠之尧科技有限公司 | 一种基于视觉和触觉的交互系统及方法 |
CN115056243A (zh) * | 2022-07-18 | 2022-09-16 | 山东大学 | 一种下棋机器人及工作方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1448884A (zh) * | 2003-04-24 | 2003-10-15 | 上海交通大学 | 基于视觉的棋盘识别系统 |
US7291065B2 (en) * | 2003-12-02 | 2007-11-06 | Chiou-Haun Lee | Method for controlling diffusive game |
CN102184544A (zh) * | 2011-05-18 | 2011-09-14 | 北京联合大学生物化学工程学院 | 校畸和识别围棋棋谱图像的方法 |
CN103116889A (zh) * | 2013-02-05 | 2013-05-22 | 海信集团有限公司 | 一种定位方法及电子设备 |
CN104998405A (zh) * | 2015-06-23 | 2015-10-28 | 周凡 | 一种基于图像识别的围棋记谱处理方法 |
CN105844636A (zh) * | 2016-03-21 | 2016-08-10 | 曾庆长 | 一种基于图像识别模式的围棋自动数目方法 |
CN105956594A (zh) * | 2016-05-10 | 2016-09-21 | 浙江理工大学 | 一种对实物象棋棋子移动识别方法 |
-
2016
- 2016-09-29 CN CN201610863757.2A patent/CN106426165A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1448884A (zh) * | 2003-04-24 | 2003-10-15 | 上海交通大学 | 基于视觉的棋盘识别系统 |
US7291065B2 (en) * | 2003-12-02 | 2007-11-06 | Chiou-Haun Lee | Method for controlling diffusive game |
CN102184544A (zh) * | 2011-05-18 | 2011-09-14 | 北京联合大学生物化学工程学院 | 校畸和识别围棋棋谱图像的方法 |
CN103116889A (zh) * | 2013-02-05 | 2013-05-22 | 海信集团有限公司 | 一种定位方法及电子设备 |
CN104998405A (zh) * | 2015-06-23 | 2015-10-28 | 周凡 | 一种基于图像识别的围棋记谱处理方法 |
CN105844636A (zh) * | 2016-03-21 | 2016-08-10 | 曾庆长 | 一种基于图像识别模式的围棋自动数目方法 |
CN105956594A (zh) * | 2016-05-10 | 2016-09-21 | 浙江理工大学 | 一种对实物象棋棋子移动识别方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301650A (zh) * | 2017-06-28 | 2017-10-27 | 湖南瑞森可机器人科技有限公司 | 四连棋棋盘图像处理方法、系统及人机对弈系统 |
CN107497117A (zh) * | 2017-08-18 | 2017-12-22 | 湖南瑞森可机器人科技有限公司 | 翻转棋棋盘图像处理方法、系统及人机对弈系统 |
CN107497117B (zh) * | 2017-08-18 | 2021-01-26 | 湖南瑞森可机器人科技有限公司 | 翻转棋棋盘图像处理方法、系统及人机对弈系统 |
CN109421052A (zh) * | 2017-08-24 | 2019-03-05 | 河海大学 | 一种基于人工智能的五子棋对弈机器人 |
CN107648833B (zh) * | 2017-09-15 | 2019-11-19 | 湖南大学 | 一种基于机器视觉的非接触式人机对弈控制方法及系统 |
CN107648833A (zh) * | 2017-09-15 | 2018-02-02 | 湖南大学 | 一种基于机器视觉的非接触式人机对弈控制方法及系统 |
CN107909889A (zh) * | 2017-11-23 | 2018-04-13 | 陕西科技大学 | 一种基于视觉引导的五子棋人机对弈实验教学系统 |
CN107813321A (zh) * | 2017-11-27 | 2018-03-20 | 安徽工业大学 | 一种五子棋机器人控制方法 |
CN109876422A (zh) * | 2019-03-14 | 2019-06-14 | 河海大学常州校区 | 一种基于霍夫变换的五子连珠判断方法 |
CN110275739A (zh) * | 2019-07-26 | 2019-09-24 | 陕西师范大学 | 一种在常数时间内判断五子棋禁手和棋形属性的方法 |
CN113893520A (zh) * | 2021-10-26 | 2022-01-07 | 上海冠之尧科技有限公司 | 一种基于视觉和触觉的交互系统及方法 |
CN115056243A (zh) * | 2022-07-18 | 2022-09-16 | 山东大学 | 一种下棋机器人及工作方法 |
CN115056243B (zh) * | 2022-07-18 | 2024-08-16 | 山东大学 | 一种下棋机器人及工作方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106426165A (zh) | 一种人机对弈五子棋机器人控制方法 | |
CN111738261B (zh) | 基于位姿估计和校正的单图像机器人无序目标抓取方法 | |
CN101893935B (zh) | 基于真实球拍的协同式增强现实乒乓球系统构建方法 | |
CN104331151B (zh) | 基于光流法的手势运动方向识别方法 | |
CN106650630B (zh) | 一种目标跟踪方法及电子设备 | |
CN105229666B (zh) | 3d图像中的运动分析 | |
CN111136669B (zh) | 一种基于全局视觉的下棋机器人及其控制方法 | |
CN105069751B (zh) | 一种深度图像缺失数据的插值方法 | |
CN104035557B (zh) | 一种基于关节活跃度的Kinect动作识别方法 | |
CN109045676B (zh) | 一种象棋识别学习算法和基于该算法的机器人智动化系统与方法 | |
CN105096311A (zh) | 基于gpu的深度图修复和虚实场景结合技术 | |
CN107154058B (zh) | 一种引导使用者还原魔方的方法 | |
CN107909889B (zh) | 一种基于视觉引导的五子棋人机对弈实验教学系统 | |
CN112232258A (zh) | 一种信息处理方法、装置及计算机可读存储介质 | |
CN103489204B (zh) | 一种二维彩色铅笔画自动绘制方法 | |
CN102024156A (zh) | 彩色人脸图像中的唇部区域定位方法 | |
CN112418171B (zh) | 一种基于深度学习的斑马鱼空间姿态与心脏位置估计方法 | |
CN111967407B (zh) | 动作评价方法、电子设备和计算机可读存储介质 | |
Neufeld et al. | Probabilistic location of a populated chessboard using computer vision | |
CN105844636A (zh) | 一种基于图像识别模式的围棋自动数目方法 | |
CN108269265B (zh) | 基于深度学习的台球击球位置测定方法及其装置 | |
CN116993893B (zh) | 一种抵御ai自瞄作弊的对抗贴图生成方法及装置 | |
CN106204418A (zh) | 一种虚拟现实移动端中基于矩阵逆运算的图像扭曲方法 | |
CN107846582A (zh) | 一种投影沙池的图像处理方法和系统 | |
Hamanishi et al. | Ttt: Time synchronization method by time distortion for vr training including rapidly moving objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170222 |
|
RJ01 | Rejection of invention patent application after publication |