Re: [问题] 关于影像处理pixel/sub-pixel 重新排列

楼主: sppmg (sppmg)   2018-08-28 02:19:10
我试试看。(以下程式未经测试)
一般影像加载 matlab 后就是 3D 矩阵,颜色应该在第三维。
简单流程:
1. 分别标记各次像素在像素中位置
2. 以这矩阵为单位,重复至图像面积,从而形成次像素遮罩
3. 将原图次像素值填入遮罩位置(这里 = 两端数量必须一样)
如果图像结构不同就在 3. 想办法用遮罩取值存入。
以下程式码
```
image = ... % 3D array (Y,X,C), C == r,g,b ;
imLen_y = size(image, 1) ;
imLen_x = size(image, 2) ;
newImage = uint8(zeros(2*imLen_y, 2*imLen_x)) ;
newPixelUnit{1} = logical ([ 1 0; 0 0]) ;
newPixelUnit{2} = logical ([ 0 1; 0 0]) ;
newPixelUnit{3} = logical ([ 0 0; 1 0]) ;
for color = 1:3
newPixelMask = repmat (newPixelUnit{color}, imLen_y, imLen_x) ;
newImage(newPixelMask) = image(:,:,color) ;
end
```

Links booklink

Contact Us: admin [ a t ] ucptt.com