2017-10-19 5 views
0

주어진 문자열을 그레이 스케일 이미지로 렌더링 한 다음 그 위에 간단한 조작을 수행하고 싶습니다. 나는 text() 함수를 알고있다. 불행하게도 그래픽 장치를 열어야합니다. 제 목적을 위해 그레이 스케일 이미지를 대신 매트릭스에 직접 저장하는 것이 훨씬 편리하고 효율적입니다.렌더링 된 그레이 스케일의 텍스트 이미지를 행렬로 얻습니다.

주어진 문자열의 렌더링 된 그레이 스케일 이미지의 매트릭스 표현을 얻는 효율적인 방법은 무엇입니까? 리처드 텔 포드에 의해 제안

+0

-하지만 그래픽 장치를 사용합니다 –

답변

0

magick 패키지는 문제를 해결하는 열쇠였다

# Load the package 
require(magick) 

# Create white canvas initializing magick graphical device 
img <- image_graph(width = 140, height = 40, bg = "white", pointsize = 20, 
        res = 120, clip = TRUE, antialias = TRUE) 
# Set margins to 0 
par(mar = c(0,0,0,0)) 

# Initialize plot & print text 
plot(c(0,1), axes = FALSE, main = "", xlab = "", ylab = "", col = "white") 
text(0.95, 0.42, "Test", pos = 4, family = "mono", font = 2) 

# Close the magick image device 
dev.off() 

# Convert to grayscale & extract pixelmatrix as integers 
img <- image_convert(img, colorspace = "gray") 
target <- drop(as.integer(img[[1]])) 
당신은 아마 magik` 패키지 '와 함께이 작업을 수행 할 수 있습니다
관련 문제