CrossValidation 图片集的分配 matlab实现

本文介绍了一种用于癌症研究的数据集划分及图像处理方法。通过对原始图像进行切分并重新组织,确保了训练、验证及测试集的独立性和多样性。此过程涉及图像读取、尺寸调整及保存等步骤。



imROOT = 'D:\CaffeInfo\B_DataCreate\CancerNormal\CVgroups';
imSUB = ['A', 'B', 'C', 'D'];

trainPath = 'D:\CaffeInfo\B_DataCreate\train_image';
valPath = 'D:\CaffeInfo\B_DataCreate\val_image';
testPath = 'D:\CaffeInfo\B_DataCreate\test_image';

PathSelect = {trainPath, trainPath, valPath,    testPath;
              trainPath, trainPath, testPath,   valPath;
              trainPath, testPath,  trainPath,  valPath;
              trainPath, testPath,  valPath,    trainPath};

CV = 1;


for p=1:length(imSUB)
    
    mvPath = mat2str( cell2mat( PathSelect(CV,p) ) );
    mvPath = mvPath(2:end-1);
    
    
    imSUBp = imSUB(p);
    fA = dir([imROOT, '\', imSUBp]);
    lenA = length(fA);
    
    m = 256;
    n = 256;
    
    for k=3:lenA
        name = fA(k).name;
        I = imread([imROOT, '\', imSUBp, '\', name]);
        [mI,nI,cI] = size(I);
        mi = mI/m;
        ni = nI/n;
        
        for i=1:mi
            for j=1:ni
                [p k i j]
                Iij = I( (i-1)*m+1 : i*m  , (j-1)*n+1 : j*n , 1:3 );
                newname = [mvPath, '\', name(1:end-4), '_Iij-', num2str(i), num2str(j), '.tif'];
                imwrite(Iij, newname);
            end
        end
        
        
    end % for k=3:lenA
    
    
end % for p=1:length(imSUB)




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值