600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > RAW图像:安卓手机拍摄 Matlab数据读取

RAW图像:安卓手机拍摄 Matlab数据读取

时间:2021-02-25 16:56:50

相关推荐

RAW图像:安卓手机拍摄  Matlab数据读取

公司项目有需要,研究安卓手机拍摄RAW图像的方法,并且使用Matlab提取图像数据。

手机拍摄RAW图像

(1)选择荣耀HONOR 20作为拍摄手机

(2)设置为“专业”拍照模式

(3)点击右上角的齿轮,设置保存格式为RAW

(4)选择好场景后,拍摄图片,手机会同时保存RAW格式和JPG格式的图像。

Matlab提取数据

(1)拷贝RAW图到电脑,路径:HONOR 20\内部存储\DCIM\Camera\RAW\

(2)确定图片的分辨率:UltraEdit打开拍摄的DNG图片,查看分辨率为8000x6000

(3)编写数据提取程序

clcclearclose allimage_cols = 8000; % image widthimage_rows = 6000; % image heightbits_raw = 10; % bit length of raw databits_bmp = 8 ; % bit length of bmp data% open filefile_id = fopen('00.dng');file_data = fread(file_id);fclose(file_id);% extract image dataimage_size = image_rows * image_cols;file_data = file_data(end - image_size * 2 + 1 : end);% merge dataimage_low = file_data(1:2:end); % low 8 bitimage_high = file_data(2:2:end); % high 2 bitimage_bmp = bitshift(image_high,8) + image_low;% vector --> matriximage_bmp = bitshift(image_bmp , bits_bmp - bits_raw);image_bmp = reshape(image_bmp,[image_cols,image_rows]);image_bmp = image_bmp';image_bmp = int32(image_bmp);image_bmp = repmat(image_bmp,[1,1,3]);% save imageimage_bmp = uint8(image_bmp);imwrite(image_bmp , '00.bmp');

(4)提取出来的数据排列为图片,图片是灰度图。

PS:

经过demosaic后才能成为彩色图,但是颜色不正常,说明RAW图像没有经过AWB处理。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。