ISP_matlab

确定输入是否为结构体数组字段 - MATLAB isfield- MathWorks 中国

*.对话框打开文件,获取路径和文件名

[file, path] = uigetfile({'*.raw'; '*.RAW'});

fid = fopen(fullfile(path, file));

% https://www.jianshu.com/p/fb17c3c7e3ae
rawData = fread(fid, [width height], 'uint16', 'ieee-le');  % 'uint8' 大端:'ieee-be'

*.读取raw图(解析raw数据头)

        fin = fopen(imgpath, 'r');
        if strcmpi(im.type, 'bin')
            wh = fread(fin, 2, format);
            im.rawWidth = wh(1);
            im.rawHeight = wh(2);
        end
        
        img_raw = [];
        img = [];
        img_raw = fread(fin, im.rawWidth*im.rawHeight, format);
        fclose(fin);
        img = reshape(img_raw, im.rawWidth, im.rawHeight);
        img = img';

*.获取raw图各通道数据;RGGB

% 方法一
    outR  = in(1:2:end, 1:2:end);  % (1, 1)
    outB  = in(2:2:end, 2:2:end);  % (2, 2)
    outG1 = in(1:2:end, 2:2:end);  % (1, 2)
    outG2 = in(2:2:end, 1:2:end);  % (2, 1)


% 方法二
[height, width] = size(img);

CH = [];
CH(:, :, 1) = img(1:2:height, 1:2:width);  % upper left;
CH(:, :, 2) = img(1:2:height, 2:2:width);  % upper right
CH(:, :, 3) = img(2:2:height, 1:2:width);  % lower left
CH(:, :, 4) = img(2:2:height, 2:2:width);  % lower right


combinedImg(1:2:height, 1:2:width) = channel(:, :, 1);
combinedImg(1:2:height, 2:2:width) = channel(:, :, 2);
combinedImg(2:2:height, 1:2:width) = channel(:, :, 3);
combinedImg(2:2:height, 2:2:width) = channel(:, :, 4);

*.convn操作注意

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值