作者wheado (自閉哥)
看板R_Language
標題[問題] 有關"readJPEG"以及"raster"問題
時間Thu Apr 14 17:07:10 2016
問題是這樣,最近想要用R來處理圖片的一些問題。
也就是將圖片轉換成矩陣,這邊使用的套件是"jpeg"
指令說明中有一個參數"native=T",是一個邏輯參數。
他的說明中當"native=T",出來是一個矩陣,如480 X 640 ---- 感覺上平面中的矩陣。
當"native=F",出來似乎也是一個矩陣,如:480 X 640 X 3 -- 感覺上空間中的矩陣。
我不懂差別在哪裡,只知道裡面有個raster(翻譯:光柵)這個單字。
而且出來的矩陣中的數值都不太一樣。
小弟對於圖片沒有太多的知識,不知道這兩個結果差別在哪?
可不可以簡單的提供一些線索或介紹QQ。
另外一個在意的是有關在R中畫出圖片檔的圖,
使用的是指令"rasterImage",在這邊我用了以下的程式碼來做圖:
=============================================================
A1 <- readJPEG("img_100026.jpg")
A2 <- readJPEG("img_100026.jpg",native = T)
##畫圖function
plot.jpeg <- function(jpeg){
res = dim(jpeg)[1:2]
plot(1,1,xlim=c(1,res[1]),ylim=c(1,res[2]))
rasterImage(jpeg,1,1,res[1],res[2])
}
plot.jpeg(A1)
plot.jpeg(A2)
=============================================================
不管native是T或F,單單用兩個不同的 480 X 640 矩陣,
都可以畫出圖片,明明矩陣數值不同,為何還可以畫出來??
如果用 480 X 640 就可以畫出來,那多出來的 "X3"到底是有甚麼意義??
謝謝大家QQ
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.227.227.23
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1460624833.A.C03.html
推 tytony: x3應該是圖片的R/G/B色碼 04/14 19:53
推 andrew43: rasterImage 是8bit的RGBA 04/14 23:54
→ andrew43: 不過我試了一下,全白是-1,全黑是-16777216 04/14 23:55
→ andrew43: 16777216 = 256^3,所以只有8bit的RGB 04/14 23:56
→ andrew43: 總之,你問的二者其實是一樣的,只是分三色層表示還是 04/14 23:57
→ andrew43: 用一層來表示而已。 04/14 23:57