Импорт необработанного изображения в R - PullRequest
0 голосов
/ 16 мая 2018

Я ищу способ импорта необработанного изображения в R.

Действительно, существует много пакетов, которые позволяют импортировать изображения .bmp, .png, .jpeg или .tiff в R (ImageMagick, EBImage, imager, bmp, tiff, TIFF, pixmap, Momocs и многие другие ...), но эти форматы файлов имеют преобразование (баланс белого, контрастность, насыщенность..) и изображения могут быть разными (с точки зрения насыщенности, яркости ..), даже если съемка стандартизирована, но объекты имеют другой размер или цвет.Необработанная картинка не имеет этой проблемы.

Я знаю, что расширение отличается в зависимости от марки камеры, что усложняет дело.

Но я бы хотел проанализировать разницу между насыщенностью и яркостью более точным и актуальным способом, чем.jpeg или .tiff.

Несмотря на мои исследования, я блокирую первый шаг: импорт необработанных изображений ..

Кто-нибудь уже достиг этого прохода?Существует ли команда bash для импорта файлов такого типа?
Я не ищу изображение, но имею доступ к необработанным данным.

1 Ответ

0 голосов
/ 25 мая 2018

Вы можете использовать функцию readRaw() из пакета hexView:

library(hexView)
raw_image <- readRaw("image_path")

В этом случае данные находятся в raw_image$fileRaw.Он хранится как вектор класса «raw».

Вы можете просто превратить его в матрицу:

image_matrix <- matrix(raw_image$fileRaw, nrow = image_height, ncol = image_width, byrow = TRUE)

Он должен воссоздать то, что вы имели в вашем необработанном файле.

NB: image_height и image_width будут в пикселях.

Теперь вы можете легко построить изображение с помощью as.raster:

plot(as.raster(image_matrix))
...