社区
图形处理/算法
帖子详情
如何识别棋盘上的棋子走动?来者有分!
zcwhgj
2004-11-03 03:36:08
比如象棋软件,走子之前棋盘是一种状态,走了一招之后棋盘是另一种状态,哪么我想请问,如何通过程序识别这种走子前后的状态,以确定是哪一个棋子走棋了?
...全文
214
22
打赏
收藏
如何识别棋盘上的棋子走动?来者有分!
比如象棋软件,走子之前棋盘是一种状态,走了一招之后棋盘是另一种状态,哪么我想请问,如何通过程序识别这种走子前后的状态,以确定是哪一个棋子走棋了?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
marcopolo
2004-11-09
打赏
举报
回复
lionwys加konista的方法就可以实现了
konista
2004-11-08
打赏
举报
回复
用数据判断,每个棋子都是对象,再搞个链表记录每一步棋子的活动情况
ddslayers
2004-11-08
打赏
举报
回复
若是围棋的话,还是根据棋盘格子是否被占用判断方便一些~---------agree
zcwhgj
2004-11-04
打赏
举报
回复
有些朋友会错我的意了.
25475360
2004-11-04
打赏
举报
回复
取点的颜色就行了,
将士象马车炮兵这几个字总有几个点的位置的颜色不一样的,
取其中几个点的颜色作为标识依据就行了,
如果你担心原来编程的人让棋在棋盘上有偏差,那你就要先对棋盘的网格扫描定位
再算偏移,然后对照标识点的颜色数据就OK了
chlchen
2004-11-04
打赏
举报
回复
接分!!!!!!1
virusletter
2004-11-04
打赏
举报
回复
一个棋一个对象。点击时判断旗子。落顶重画。
arvid_gs
2004-11-04
打赏
举报
回复
在棋盘的位置(X,Y),此回合是否走动,上一次(或几次)在棋盘的位置(这个试结构大小,以便于悔棋)
syy64
2004-11-03
打赏
举报
回复
用模型作呀。
konista
2004-11-03
打赏
举报
回复
typedef struct Step
{
int index; //第index步
int x0; //移动前的x坐标
int y0; //移动前的y坐标
int x1; //移动后的x坐标
int y1; //移动后的y坐标
int id; //棋子ID,是車还是马..
struct Step * next; //下一步
}STEP, * PSTEP;
lionwys
2004-11-03
打赏
举报
回复
把每个棋子作为一个对象,即是一个类,然后对着各类进行onmouseover ,onclick 等响应就可以了
bjxiaoye
2004-11-03
打赏
举报
回复
为什么用图象呢..其实每个棋子和棋盘都是一个抽象.用数据来说明问题多好
zcwhgj
2004-11-03
打赏
举报
回复
s6283(瞎忙) 你说的是一个方法,但就怕两者的图像可能会有一些微小的差异,这个办法没有解决.
I_Love_CPP(我爱C++):对我就是做一个不相干的程序.
s6283
2004-11-03
打赏
举报
回复
我提个思路,预先保留好每个棋子的图像,下棋前保存好屏幕原始的图像,等下棋后再把下棋后的图像与原来的图像做比较,比如把图像的内容相减,得到大于0的区域应该就是所下的棋的图像,再和棋子的图像做比较得到那个棋在移动
I_Love_CPP
2004-11-03
打赏
举报
回复
你做这个后台程序究竟是象棋程序的后台操作还是另外一个不相干的程序哦?
如果是程序自己识别自己走的是那个棋还容易,你要让另外一个程序去监控就很麻烦了,简直就不能实现。
zcwhgj
2004-11-03
打赏
举报
回复
可能我表达的不清楚:我的意思是有一个象棋软件,它由人和电脑在下棋,哪么,我做一个后台程序来监视这个下棋的进程,也就是要知道人走了哪一些棋,还有电脑自己又走了哪一些棋.
如何去识别,这是一个程序对另一个程序界面的识别.
try876
2004-11-03
打赏
举报
回复
UP
zhangnanonnet
2004-11-03
打赏
举报
回复
每个棋子都应该保存一个结构信息,比如:在棋盘的位置(X,Y),此回合是否走动,上一次(或几次)在棋盘的位置(这个试结构大小,以便于悔棋),等等.呵呵,其实我也没有做过,就是临时想想觉得应该是这样
flyincloud2000
2004-11-03
打赏
举报
回复
若是围棋的话,还是根据棋盘格子是否被占用判断方便一些~
flyincloud2000
2004-11-03
打赏
举报
回复
每个棋子都设一个标志,走了之后该标志置1,其余清0。
加载更多回复(2)
张正友相机标定Opencv实现(完整程序+
棋盘
图)实例源码
张正友相机标定Opencv实现,附
棋盘
图和14张不同角度标定图。 包含完整的工程代码,有详细的注释说明,一键运行。实现了相机标定、输出相机内参、外参、旋转和平移矩阵、标定效果评价、以及使用标定结果对原始
棋盘
图进行矫正。
基于python及图像
识别
的围棋
棋盘
棋子
识别
2——定位
棋子
位置及
识别
棋子
颜色
最近在做一个围棋
棋盘
棋子
识别
项目,这是该项目第二篇,第一篇见:1、基于python及图像
识别
的围棋
棋盘
棋子
识别
1——定位
棋盘
位置 , 基于python及图像
识别
的围棋
棋盘
棋子
识别
2——定位
棋子
位置及
识别
棋子
颜色1、将
棋盘
分割成19x19的小方格2、根据像素占比
识别
是否是黑色
棋子
3、根据像素占比
识别
是否是白色
棋子
4、将
棋盘
棋子
位置通过列表表示 这一篇主要实现定位
棋子
位置及
识别
棋子
颜色。 围棋
棋盘
原图如下: 经过上一章节处理,已经将
棋盘
位置找到,如下图: 现在根据新图,进行
棋子
位置的定位 1、将
棋盘
分割成1
Unity3D
棋盘
游戏实战入门——2D智力拼图
本课程使用Unity3d开发软件和C#编程语言,从零开始逐步完成一个2D拼图游戏项目。在本课程中,你可以了解并学习到游戏工程的创建和文件结构的维护、Unity3D的射线检测机制、插值插件Itween的使用、游戏数据的离线保存,并初步了解Unity3D的粒子系统和动画系统。
基于python及图像
识别
的围棋
棋盘
棋子
识别
1——定位
棋盘
位置
基于python及图像
识别
的围棋
棋盘
棋子
识别
1——定位
棋盘
位置效果图原图中间处理效果最终结果思路分析源码:定位
棋盘
位置效果图 最近需要做一个围棋
识别
的项目,首先要将
棋盘
位置定位出来,效果图如下: 效果图 原图 中间处理效果 最终结果 思路分析 我们利用python opencv的相关函数进行操作实现,根据
棋盘
颜色的特征,寻找到相关特征,将
棋盘
区域抠出来。最好从原始图像中将
棋盘
位置截取出来。 源码:定位
棋盘
位置 from PIL import ImageGrab import numpy as np i
算法
棋盘
棋子
问题
题干:一个10*10的
棋盘
上下了某些
棋子
,若
棋子
的上下左右有
棋子
,则这些
棋子
被称为一个块,求一种算法,得到
棋盘
上有几个块。 我这种思路是使用递归求解 思路就是 1.
棋盘
上的每一个点有两个标志位,一个代表是否有
棋子
,一个代表是否遍历过。 2.遍历
棋盘
上每一个点,遍历之前先把当前点的遍历状态置成遍历过。 3.若上下左右有
棋子
就递归,而后把当前点的
棋子
删掉。 4.最后遍历
棋盘
上还剩几个
棋子
,...
图形处理/算法
19,469
社区成员
50,697
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章