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