我困惑我的代码有什么问题
28日视图(30天)
显示旧的评论
移动=输入(的输入图像的名称:,“年代”);
函数[board_game1] = AnalyzeScreenshot(名称)
照片= imread(移动);
board_game1 = 0 (4, 4);
大小(p, q, r) =(图片);
二进制= false (p, q);
为2 = 1:p%定位板
为jj = 1:问
如果图片(ii, jj, 1) = = 187图片(ii, jj, 2) = = 173图片(ii, jj, 3) = = 160
二进制(ii, jj) = 1;
x = 2;
y = jj;
打破
结束
结束
如果二进制(ii, jj) = = 1
打破
结束
结束
玩= imread(二进制);%矩阵填充瓷砖的值
bhor = 1;
bv = 1;
为2 = 19:121:380
bhor = 1;
为jj = 10:121:373
如果玩(ii, jj, 1) = = 238 & &游戏(ii, jj, 2) = = 228 & &游戏(ii, jj, 3) = = 218
平方= 2;
board_game1 (bhor bv) = 2;
elseif玩(ii, jj, 1) = = 237 & &游戏(ii, jj, 2) = = 224 & &游戏(ii, jj, 3) = = 200
平方= 4;
board_game1 (bhor bv) = 4;
elseif游戏(ii, jj, 1) = = 242 & &游戏(ii, jj, 2) = = 177 & &游戏(ii, jj, 3) = = 121
平方= 8;
board_game1 (bhor bv) = 8;
elseif游戏(ii, jj, 1) = = 245 & &游戏(ii, jj, 2) = = 149 & &游戏(ii, jj, 3) = = 99
平方= 16;
board_game1 (bhor bv) = 16;
elseif游戏(ii, jj, 1) = = 246 & &游戏(ii, jj, 2) = = 124 & &游戏(ii, jj, 3) = = 95
平方= 32;
board_game1 (bhor bv) = 32;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 207 & &游戏(ii, jj + 5, 3) = = 120
平方= 128;
board_game1 (bhor bv) = 128;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 204 & &游戏(ii, jj + 5, 3) = = 97
平方= 256;
board_game1 (bhor bv) = 256;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 200 & &游戏(ii, jj + 5, 3) = = 80
平方= 512;
board_game1 (bhor bv) = 512;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 197 & &游戏(ii, jj + 5, 3) = = 63
平方= 1024;
board_game1 (bhor bv) = 1024;
其他的
board_game1 (bhor bv) = 0;
结束
如果bhor = = 4%在矩阵输入正确的地方
bv = 3;
结束
bhor = bhor + 1;
结束
如果bv = = 4
bv = 3;
结束
bv = bv + 1;
board_game1 = board_game1 (bhor, bv);
结束
disp (board_game1);
结束
答案(2)
KSSV
2023年4月27日下午3点半
你需要输入图像的功能。
移动=输入(的输入图像的名称:,“年代”);
[board_game1] = AnalyzeScreenshot(移动);
函数[board_game1] = AnalyzeScreenshot(移动)% < - - -恰克的变量名称
照片= imread(移动);
board_game1 = 0 (4, 4);
大小(p, q, r) =(图片);
二进制= false (p, q);
为2 = 1:p%定位板
为jj = 1:问
如果图片(ii, jj, 1) = = 187图片(ii, jj, 2) = = 173图片(ii, jj, 3) = = 160
二进制(ii, jj) = 1;
x = 2;
y = jj;
打破
结束
结束
如果二进制(ii, jj) = = 1
打破
结束
结束
% = imread玩(二进制);%瓷砖填满矩阵值% < - - - - - -
%这是什么?你为什么读二进制矩阵intilaized是哪一个?
玩=二进制;
bhor = 1;
bv = 1;
游戏%变量没有定义wny ....在哪里它是一个函数吗?
为2 = 19:121:380
bhor = 1;
为jj = 10:121:373
如果玩(ii, jj, 1) = = 238 & &游戏(ii, jj, 2) = = 228 & &游戏(ii, jj, 3) = = 218
平方= 2;
board_game1 (bhor bv) = 2;
elseif玩(ii, jj, 1) = = 237 & &游戏(ii, jj, 2) = = 224 & &游戏(ii, jj, 3) = = 200
平方= 4;
board_game1 (bhor bv) = 4;
elseif游戏(ii, jj, 1) = = 242 & &游戏(ii, jj, 2) = = 177 & &游戏(ii, jj, 3) = = 121
平方= 8;
board_game1 (bhor bv) = 8;
elseif游戏(ii, jj, 1) = = 245 & &游戏(ii, jj, 2) = = 149 & &游戏(ii, jj, 3) = = 99
平方= 16;
board_game1 (bhor bv) = 16;
elseif游戏(ii, jj, 1) = = 246 & &游戏(ii, jj, 2) = = 124 & &游戏(ii, jj, 3) = = 95
平方= 32;
board_game1 (bhor bv) = 32;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 207 & &游戏(ii, jj + 5, 3) = = 120
平方= 128;
board_game1 (bhor bv) = 128;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 204 & &游戏(ii, jj + 5, 3) = = 97
平方= 256;
board_game1 (bhor bv) = 256;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 200 & &游戏(ii, jj + 5, 3) = = 80
平方= 512;
board_game1 (bhor bv) = 512;
elseif游戏(ii, jj + 5, 1) = = 237 & &游戏(ii, jj + 5, 2) = = 197 & &游戏(ii, jj + 5, 3) = = 63
平方= 1024;
board_game1 (bhor bv) = 1024;
其他的
board_game1 (bhor bv) = 0;
结束
如果bhor = = 4%在矩阵输入正确的地方
bv = 3;
结束
bhor = bhor + 1;
结束
如果bv = = 4
bv = 3;
结束
bv = bv + 1;
board_game1 = board_game1 (bhor, bv);
结束
disp (board_game1);
结束
0评论
沃尔特·罗伯森
2023年4月27日在33秒
移动=输入(的输入图像的名称:,“年代”);
定义一个变量在“基本”工作区。
函数[board_game1] = AnalyzeScreenshot(名称)
开始命名函数的定义
AnalyzeScreenshot
最多,它接受一个输入参数,返回一个输出参数。
这
函数
线做
不
调用该函数,它只是开始
定义
的函数。它特别
不
调用函数传入的值
移动
照片= imread(移动);
这是内部的功能,你想使用的价值
移动
。但
移动
没有被赋值在函数内部,然后呢
移动
不是任何参数传递到函数的名称,然后呢
移动
不是任何共享变量的名称(共享变量只适用于嵌套函数。)所以
移动
不是一个变量函数。MATLAB将查看是否存在一个函数命名
移动
此时应该调用;它将
可能
找不到这样的一个函数。MATLAB因此抱怨未知函数或变量
移动