我的知名围棋APP忘忧围棋的开发者(www.gog361.com),一直想做一个可以通过手机拍摄识别死活题的功能,前后经过了半年时间的折腾,终于上线这个功能。这个过程很艰辛,并且踩了还不少的坑,所以记录下这个过程。应用的场景有以下几种1. 小孩子在学围棋的时候,家长是不懂围棋的,老师给的题目在书本上,家长可以拍照识别题目并通过AI解题2. 在现实中下棋的时候,棋局结束的时候数子,或者棋局中间的时候
利用YOLO网络识别围棋图谱 1 Introduction2. Proposed System2.1 Board detection2.2 Go pieces detection and layout classification2.2.1. yolo2.2.2 Improved Detection Network Based on yolo2.2.3 model ensembl
↑资料图 图据IC PhotoAI的出现,打破了人们以往的认识,尤其是在围棋界,自AlphaGo问世以来,它对人类棋手碾压性的优势,几乎颠覆了人们对传统围棋的认识。以至于世界高手们都已心甘情愿地“俯首称臣”。如今,AI已成为棋手们提高技艺的得力助力,但也成为一些人作弊的工具。1月16日,据韩国媒体报道,在韩国围棋定段赛赛场出现了用AI作弊事件,这是围棋界第一例抓到实质证据的作弊事件。首例抓到“
很多人对学英语都感到崩溃,但最近山东的小学生又要学习一门“语言”—Python,除了山东在小学教材中加入Python外,今年浙江省高中信息技术教材改革项目中,也提到了Python。python进攻低幼年孩子已然无法避免,自三月起,在计算机二级考试中加入 “Python语言程序设计”科目,由此可见,世界已经无法阻挡Python入侵。 去年五月份,世界围棋第一人柯洁大战阿尔法狗,Python第一次登
转载 10月前
110阅读
文章目录1 前言2 准备工作2.1 约定围棋局面的数据结构2.2 显示一个围棋局面2.3 计算黑白双方的棋子和围空3 处理流程3.1 图像预处理3.2 识别并定位棋盘3.3 透视矫正3.4 定位棋盘格子3.5 识别棋子及其颜色4 源码文件4.1 统计棋子和围空数量的脚本文件4.2 视觉识别的脚本文件 1 前言学习一种技能,最好的方式就是与实际应用相结合,也就是人们常说的学以致用。很多的Pytho
目的检测出棋盘格角点亚像素位置原理大致原理 二值化-膨胀白色块-画矩形出后进行轮廓提取-直线拟合判断是否为四条边-查找领域的四边形-角点排序二值化1.1 二值化(opencv争对棋盘格的)计算直方图(每个像数值的数量)平滑直方图计算图像直方图的梯度得到梯度直方图 (做差)。满足以下条件则为局部最大值 梯度图直方图中前小于零后大于零直方图中前中后累加大于于总像素数1%然后判断局部最大值个数
#作者:韦访 1、概述上一节使用slim对图像进行识别,但是一张图片里就识别出一样东西,这节我们就来学习怎么检测图片里更多的物品。上一节我们使用的是Inception-ResNet-v2模型,这一节我们使用的是VGG模型。因为VGG在不仅在图像的识别上效果不错,而且在图像检测方面的效果也很好。2、下载VGG19模型和上节一样,我们也使用别人在ImageNet上训练好的模型来识别图片内容。打开以下
2016年3月,阿尔法围棋围棋世界冠军、职业九段棋手李世石进行围棋人机大战,以4比1的总比分获胜; 2016年末2017年初,该程序在中国棋类网站上以“大师”(Master)为注册账号与中日韩数十位围棋高手进行快棋对决,连续60局无一败绩; 2017年5月,在中国乌镇围棋峰会上,它与排名世界第一的世界围棋冠军柯洁对战,以3比0的总比分获胜。围棋界公认阿尔法围棋的棋力已经超过人类职业围
转载 2023-09-06 13:37:03
110阅读
很简单,作者写的差不多对,不高兴改了。。。刚接触图像处理是从摄像机标定开始,一直好奇opencv程序中是怎么实现棋盘定位的。自己也曾用matlab写过摄像机标定的整个过程,在图像中检测出棋盘的位置是整个标定过程的第一步,但一直不稳定,不知道opencv中采用什么算法检测棋盘的位置。很可惜,网上基本上没有这方面的资料,在opencv原文件中的提示:The algorithms developed a
引子在前一篇文章《opencv-python实际演练(二)军棋自动裁判(1)棋子图像采集设备DIY》介绍了棋子图像采集设备的制作过程,在取得棋子图像后发现提取目标区域的效果还不够好,有时不能正确地找出目标区域。本文试图找出影响目标区域提取的关键因素,为棋子图像采集设备的改进做出理论上的指导。提取过程的实例分析Canny 边缘检查结果如下: 直观上看,这个外边缘很完整,接下来查找外轮廓 contou
引子文章《opencv-python实际演练(二)军棋自动裁判(1)棋子图像采集设备DIY》介绍了棋子图像采集仪的制作过程。文章《opencv-python实际演练(二)军棋自动裁判(3)棋子图像采集设备的改进》对图像采集仪进行了改进。现在该项目的硬件部分已经准备完毕,接下来要做的就是对采集到的棋子图像进行OCR。如果能够顺利地识别出棋子上的文字,判断两个棋子的棋力大小就比较容易了。棋子文字识别
机巧围棋(CleverGo)在围棋程序内核上采用了aigagror作者开源的GymGo项目,在该项目的基础上进一步封装了一个训练围棋AI的围棋模拟器。本文讲解以GymGo项目中相关方法为背景,讲解围棋程序核心方法及实现逻辑。第1部分讲解棋盘状态表示方法;第2部分讲解围棋终局判定方法;第3部分讲解围棋核心规则方法;第4部分综合第3部分的围棋核心规则方法,讲解下一个棋盘状态的计算方法。1. 棋盘状态表
把某个棋子放在某个位置可以把这个位置周围的对方的若干棋子吃掉,即使这个棋子暂时没有气,这
j
原创 2022-07-12 10:25:54
346阅读
  下棋也有十几年时间了。  迷恋象棋的时候看别人下围棋一下就好长时间,因为乐于此道的纷繁复杂和机关难以算尽的奥妙,便琢磨起围棋来。  最初是胡下,就知道那么一点规则就兴趣盎然地捉对厮杀,两三个棋友拿着方格本,一人一支铅笔和橡皮擦,围在一起唧唧咋咋地下,吃子即擦去,下完了,挨个数空和子,有乐但很烦琐,有时为一个、二个子的差别争得面红耳赤。  上大学后买了一些书来看,知道了“急所”、“手筋”、“腾挪
原创 2014-09-17 07:44:17
999阅读
围棋与三进制 如果把抛硬币多次(或者同时抛多枚硬币,本质是一样的,因为彼此独立)的正(1)反(0),组合在一起就构成的二进制,则骰子如果标识为0-5,则得到了6进制,同理围棋中的每一个位置(19*19=361个位置),无黑白,三种状态自然构成3进制,也即进制与其样本空间的状态数有关(#S)。
转载 2016-10-05 20:46:00
119阅读
2评论
1)卷积神经网络(CNN)简介关于什么是卷积神经网络(CNN),请自行查阅资料进行学习。如果是初学者,这里推荐一下台湾的李宏毅的深度学习课程。链接就不给了,这些资料网站上随处可见。值得一提的是,CNN虽然在图像处理的领域具有不可阻挡的势头,但是它绝对不仅仅只能用来图像处理领域,大家熟知的alphaGo下围棋也可以通过CNN的结构进行处理,因为下围棋与图像有着相似之处,所以说,CNN提供给我们的是一
愚形,是围棋的专业术语,凡是效率低下且不美观的棋形,统称为愚形。比如空三角和团子,就是典型的愚形。低水平棋手经常会在无意中走出愚形,而那些高手平棋手,尽管在生死存亡的危机时刻也会用愚形求生或者逃命,但在正常局面下他们是不会走出愚形的。在Python代码中,初学者也会写出一些类似围棋愚形的写法,不仅臃肿繁琐,而且效率低下。本文总结了Python代码中的三大常见“愚形”,快来看看,你中招了吗?1. 不
我们利用计算机视觉技术和卷积神经网络(CNN)为这个项目创建分类算法,并确定棋子在棋盘上的位置。最终的应用程序会保存整个图像并可视化的表现出来,同时输出棋盘的2D图像以查看结果。(左)实时摄像机进给的帧和棋盘的(右)二维图像01. 数据我们对该项目的数据集有很高的要求,因为它最终会影响我们的实验结果。我们在网上能找到的国际象棋数据集是使用不同的国际象棋集、不同的摄影机拍摄得到的,这导致我们创建了自
【取棋子问题】50枚棋子围成圈,隔一个棋子取走一个棋子,最后剩的是?50枚棋子围成圆圈问题分析程序代码 50枚棋子围成圆圈编上号码1、2、3、4、…50,顺时针开始取,每隔一枚棋子取出一枚,要求最后留下的枚棋子的号码是42号,那么该从几号棋子开始取呢?问题分析不论是取棋子模型还是踢人模型,要分析,每轮取走的最大的数字,是否是上一轮留下的最大的数字,举个例子,如果第一轮从1开始取,那么第一轮留下的
继去年3月人机大战引发全球瞩目以来,围棋AI(人工智能)再度引发跨领域的关注:一个叫Master的围棋AI,几天时间,面对中日韩顶尖职业围棋选手,已取得60胜0败的恐怖战绩,展现出的围棋技艺已经到了人类理解不了的程度。这可以视为人工智能在围棋领域的一次“大征服”,而在此之外的意义则是,告诉了我们人工智能在征服一项领域或职业时,究竟速度有多快。理解这一点,对于人类,乃至每一个人,都非常重要。通过本实
  • 1
  • 2
  • 3
  • 4
  • 5