找回密码
 注册
关于网站域名变更的通知
查看: 514|回复: 3
打印 上一主题 下一主题

MATLAB运行时跳过了循环体求解决

[复制链接]
  • TA的每日心情
    开心
    2022-1-21 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2022-11-4 11:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    写了一小段将十个文件夹中图片进行裁剪又放入该文件夹中的代码,运行时还没有裁剪就显示“完成”,不知道哪里出了错误,代码如下:8 A5 C& _) ~0 G# B& ~) g7 d! a
    clc. k* g! Q! M  |0 {
    clear- K# `: G# y- @3 G7 x5 E
    close all;
    1 P8 F& ?7 A3 ]3 G' _4 a$ Btitle={'01','02','03','04','05','06','07','08','09','10'};' J1 |9 p3 i  N; n1 V% b
    for i = 1:10! J4 Q$ h" ]8 d& t0 B9 q# h  S( R
        file_path = 'D:\BaiduNetdiskDownload\课程竞赛\Train\cell2mat(title(i))';: _. u' `7 X1 d1 Z" F3 V$ k
        img_path_list = dir(strcat(file_path, '*.JPG')); % 选后缀为 .jpg 的图片
    , ^0 Y! q) L# j% l' F. a    img_num = length(img_path_list); %获得图片数量. R- A. w, m% h& l( r( A
        for j = 1:img_num
    $ ^, E6 r. N1 \/ n" N7 C        image_name = img_path_list(j).name;
    # b0 i$ d0 n) ~+ M1 [        image = imread(strcat(file_path, image_name));- v0 {! R9 |/ h& l
            crop_image = imcrop(image, [0, 0, 1000, 1000]); % 使用 imcrop() 函数来裁剪图片,第二个参数的格式为 [XMIN YMIN WIDTH HEIGHT]+ E3 {- c( z( f6 L* ~% s" _# v
            cut_image_name = strcat('train',num2str(90+j),'_','*.JPG');
    7 `7 D- q+ C4 [/ _( ?        imwrite(crop_image, strcat(file_path, cut_image_name)); % 保存文件# n& p& A4 J; ~/ \
        end% N3 n$ M' Q, U+ x5 B
    end
    9 T$ _4 }+ E/ @2 r2 h, `! Mdisp('完成');4 b8 W+ e! o2 k4 S0 u3 ], _1 y

    该用户从未签到

    2#
    发表于 2022-11-4 13:11 | 只看该作者
    file_path的值不对,字符量中i是不视作变量的,你的路径永远是 'D:\BaiduNetdiskDownload\课程竞赛\Train\cell2mat(title(i))'。如果希望路径在循环中也变化的话,这样
    $ }8 ?% \2 V! w: f# j; Bfile_path = ['D:\BaiduNetdiskDownload\课程竞赛\Train\cell2nidemat',char(title(i))];

    点评

    谢谢,但是又报错了,请问这是怎么回事呢? 报错如下: 错误使用 char 无法从 matlab.graphics.primitive.Text 转换为 char。 出错 cut (第 6 行) file_path = ['D:\BaiduNetdiskDownload\data\Train\cel  详情 回复 发表于 2022-11-4 13:17
  • TA的每日心情
    开心
    2022-1-21 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2022-11-4 13:17 | 只看该作者
    li205212021 发表于 2022-11-4 13:11
    . c/ H' v% t' p9 jfile_path的值不对,字符量中i是不视作变量的,你的路径永远是 'D:\BaiduNetdiskDownload\课程竞赛\Train\c ...
    * \0 W8 Y5 ?  J# x4 j% ]1 n
    谢谢,但是又报错了,请问这是怎么回事呢?5 J" Z) c! X2 [9 d$ l7 Z) |
    报错如下:
    * Q" L" [* f$ M! }8 j错误使用 char; |; ~  r- }- ~. [3 ~
    无法从 matlab.graphics.primitive.Text 转换为 char。
    8 _4 t( h& T- ^0 z
    , O0 q3 n3 R. v8 P/ X6 G, ^( ^6 Q出错 cut (第 6 行)1 f& H% H4 I/ N; n2 f
        file_path = ['D:\BaiduNetdiskDownload\data\Train\cell2nidemat',char(title(i))];
    2 L/ v/ A) f5 x

    该用户从未签到

    4#
    发表于 2022-11-4 13:24 | 只看该作者
    我复制的时候多打了几个错字
    * k5 s- F* V8 d+ z# K) d) W; ^file_path = ['D:\BaiduNetdiskDownload\课程竞赛\Train\cell2mat',char(title(:,i))];改下就好了
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-24 12:30 , Processed in 0.125000 second(s), 27 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表