如何用R来处理图片
1 biOps安装
sudo apt-get install libfftw3-dev libtiff5-dev
devtools::install_github("cran/biOps")
2 使用
library(biOps)
# 读取本地的图像文件,观察到此图像是320*320像素的rgb图片
x <- readJpeg("d:\\xccds.jpg")
print(x)
# 先尝试缩放操作,后面的参数是缩放的比例,可以采用四种方式进行插值,这里用的是最近邻法
plot(imgScale(x,1.3,1.3,interpolation='nearestneighbor'))
#之后进行柔化降噪,此处采用的是中位数滤镜
plot(imgBlockMedianFilter(x,5))
# 也很方便进行图片裁剪,先设定好左上角的坐标像素,再设定好图片的宽度和高度即可
plot(imgCrop(x,1,1,320,200))
# 修改后的结果可以用writeJpeg函数存到本地磁盘中
y <- imgCrop(x,1,1,320,200)
writeJpeg(filename='test.jpg',imgdata=y)
# 另外还有一些有用的处理函数
# 图像聚类以进行颜色的压缩
plot(imgKMeans(x,8))
# 翻转图像
plot(imgHorizontalMirroring(x))
# 负片效果
plot(imgNegative(x))
# 转灰度效果
plot(imgRGB2Grey(x))
#图像背景色更换
y <- unclass(x)
y1 <- y[,,1]
y2 <- y[,,2]
y3 <- y[,,3]
#白色255 255 255
z <- y1>220&y2>220&y3>220
y1[z] <- 255 #r
y2[z] <-0 #g
y3[z]<- 0 #b
# 修改后的矩阵再重新组合为图片格式
y <- imagedata(array(data=c(y1,y2,y3),dim=c(320,320,3)))
plot(y)
sudo apt-get install libfftw3-dev libtiff5-dev
devtools::install_github("cran/biOps")
2 使用
library(biOps)
# 读取本地的图像文件,观察到此图像是320*320像素的rgb图片
x <- readJpeg("d:\\xccds.jpg")
print(x)
# 先尝试缩放操作,后面的参数是缩放的比例,可以采用四种方式进行插值,这里用的是最近邻法
plot(imgScale(x,1.3,1.3,interpolation='nearestneighbor'))
#之后进行柔化降噪,此处采用的是中位数滤镜
plot(imgBlockMedianFilter(x,5))
# 也很方便进行图片裁剪,先设定好左上角的坐标像素,再设定好图片的宽度和高度即可
plot(imgCrop(x,1,1,320,200))
# 修改后的结果可以用writeJpeg函数存到本地磁盘中
y <- imgCrop(x,1,1,320,200)
writeJpeg(filename='test.jpg',imgdata=y)
# 另外还有一些有用的处理函数
# 图像聚类以进行颜色的压缩
plot(imgKMeans(x,8))
# 翻转图像
plot(imgHorizontalMirroring(x))
# 负片效果
plot(imgNegative(x))
# 转灰度效果
plot(imgRGB2Grey(x))
#图像背景色更换
y <- unclass(x)
y1 <- y[,,1]
y2 <- y[,,2]
y3 <- y[,,3]
#白色255 255 255
z <- y1>220&y2>220&y3>220
y1[z] <- 255 #r
y2[z] <-0 #g
y3[z]<- 0 #b
# 修改后的矩阵再重新组合为图片格式
y <- imagedata(array(data=c(y1,y2,y3),dim=c(320,320,3)))
plot(y)
评论
发表评论