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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    写了一小段将十个文件夹中图片进行裁剪又放入该文件夹中的代码,运行时还没有裁剪就显示“完成”,不知道哪里出了错误,代码如下:9 |- |/ @& ]# h
    clc
    , j* d; ~0 [: G6 nclear; ~# S% m: `6 X& f7 v( A! K
    close all;
    ) u% M) d" n- Y( D2 Y9 atitle={'01','02','03','04','05','06','07','08','09','10'};% O! Y+ v) x. O$ i2 P
    for i = 1:10
    5 ~: U5 }; ~7 Y) ?2 g    file_path = 'D:\BaiduNetdiskDownload\课程竞赛\Train\cell2mat(title(i))';  F0 y6 D5 Q* u/ T
        img_path_list = dir(strcat(file_path, '*.JPG')); % 选后缀为 .jpg 的图片
    , D  G8 ]# M/ v, N    img_num = length(img_path_list); %获得图片数量
    $ Z6 d! X  U, X; A$ {    for j = 1:img_num
    / E( w% y0 A+ M8 Z+ z- J3 X5 P2 o) n        image_name = img_path_list(j).name;. N+ D- O7 k8 j- D* y! j( P
            image = imread(strcat(file_path, image_name));0 c7 n2 L3 {) ?
            crop_image = imcrop(image, [0, 0, 1000, 1000]); % 使用 imcrop() 函数来裁剪图片,第二个参数的格式为 [XMIN YMIN WIDTH HEIGHT]
    8 d& M2 Y/ b) e; n: O1 A2 F( x        cut_image_name = strcat('train',num2str(90+j),'_','*.JPG');; p  f3 J) \, t5 z% J3 n
            imwrite(crop_image, strcat(file_path, cut_image_name)); % 保存文件
    1 J" g+ V1 h( V' X* w, L3 h% c3 E    end  U- q+ j* D, K# |, g: O0 W
    end
    - r3 B7 Z! M0 M/ H; J+ fdisp('完成');
      `0 a; D. B) E( d/ k. {

    该用户从未签到

    2#
    发表于 2022-11-4 13:11 | 只看该作者
    file_path的值不对,字符量中i是不视作变量的,你的路径永远是 'D:\BaiduNetdiskDownload\课程竞赛\Train\cell2mat(title(i))'。如果希望路径在循环中也变化的话,这样
    % E; u. ^% [/ p' U! \file_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:118 D7 q/ I4 N2 U3 F& w
    file_path的值不对,字符量中i是不视作变量的,你的路径永远是 'D:\BaiduNetdiskDownload\课程竞赛\Train\c ...

    ) @8 z4 l6 l. ?0 `! e; I. _$ }# d! {谢谢,但是又报错了,请问这是怎么回事呢?+ o7 a: l5 {9 D5 D$ f3 W, b
    报错如下:
    * _+ v% `3 D# z% A9 `! b% y& [错误使用 char2 s. P* I/ C' t( @5 w3 t( {% B! y
    无法从 matlab.graphics.primitive.Text 转换为 char。
    , ]$ F  F, k2 w( h  ]- q* C3 f2 T* C* O$ i; i! ?' L- l/ {
    出错 cut (第 6 行)# K6 D( R! K6 L. o5 K
        file_path = ['D:\BaiduNetdiskDownload\data\Train\cell2nidemat',char(title(i))];
    , ~$ c3 o! n# [9 K0 b

    该用户从未签到

    4#
    发表于 2022-11-4 13:24 | 只看该作者
    我复制的时候多打了几个错字$ \! ~0 ^6 ?9 l" z% L) o$ T% f
    file_path = ['D:\BaiduNetdiskDownload\课程竞赛\Train\cell2mat',char(title(:,i))];改下就好了
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-7-11 12:44 , Processed in 0.109375 second(s), 24 queries , Gzip On.

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

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

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