java 针对图像进行缩放(有损的)
2017-11-30 19:37
549 查看
/**
* 判断是否位黑色像素
* @param rgb
* @return
*/
public static boolean isBlack(int rgb) {
Color color = new Color(rgb);
if (color.getRed() + color.getGreen() + color.getBlue() <= 300) {
return true;
}
return false;
}
/**
* 缩放图片,默认16x16
* @param img
* @return
*/
public static BufferedImage scaleImage(BufferedImage img) {
return scaleImage(img, 16, 16);
}
/**
* 缩放图片
* @param img
* @param width
* @param height
* @return
*/
public static BufferedImage scaleImage(BufferedImage img, int width, int height){
ScaleFilter sf = new ScaleFilter(width,height);
BufferedImage imgdest = new BufferedImage(width, height, img.getType());
return sf.filter(img, imgdest);
}
/**
* 获得训练集图片的分类,如a-12.jpg,返回a
* @param filename
* @return
*/
public static String getImgClass(String filename){
String[] arr = filename.split("-");
if (arr != null) {
return arr[0];
}else{
return "";
}
}
public static void main(String []args)
{
try {
BufferedImage img = ImageIO.read(new File("F:/run/QQ图片20170327142755.jpg"));
BufferedImage aa =scaleImage(img, 500, 500);
ImageIO.write(aa, "jpg", new File("D:/targetPIC.jpg"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
* 判断是否位黑色像素
* @param rgb
* @return
*/
public static boolean isBlack(int rgb) {
Color color = new Color(rgb);
if (color.getRed() + color.getGreen() + color.getBlue() <= 300) {
return true;
}
return false;
}
/**
* 缩放图片,默认16x16
* @param img
* @return
*/
public static BufferedImage scaleImage(BufferedImage img) {
return scaleImage(img, 16, 16);
}
/**
* 缩放图片
* @param img
* @param width
* @param height
* @return
*/
public static BufferedImage scaleImage(BufferedImage img, int width, int height){
ScaleFilter sf = new ScaleFilter(width,height);
BufferedImage imgdest = new BufferedImage(width, height, img.getType());
return sf.filter(img, imgdest);
}
/**
* 获得训练集图片的分类,如a-12.jpg,返回a
* @param filename
* @return
*/
public static String getImgClass(String filename){
String[] arr = filename.split("-");
if (arr != null) {
return arr[0];
}else{
return "";
}
}
public static void main(String []args)
{
try {
BufferedImage img = ImageIO.read(new File("F:/run/QQ图片20170327142755.jpg"));
BufferedImage aa =scaleImage(img, 500, 500);
ImageIO.write(aa, "jpg", new File("D:/targetPIC.jpg"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
相关文章推荐
- 使用 Java 进行图像处理 - 图像缩放
- 在java中对图像进行操作 格式转换 缩放
- java将图片缩放实现类(能将jpg、bmp、png、gif图片文件,进行等比或非等比的大小转换)
- 想对jpeg格式图像进行压缩(不是缩略图),压缩后还是jpeg格式,在java中如何实现
- PHP 对 png 图像进行缩放,支持透明背景
- Java图像处理技巧四则-剪切,缩放,灰度变换,彩色变换
- 使用 Java 进行图像处理 - 取得图像上指定位置像素的 rgb 颜色分量
- 基于mschart控件,绘制工控采集类曲线,可对图像进行缩放,拖动滚动条显示放大后的图像
- PHP实现对png图像进行缩放的方法(支持透明背景)
- JAVA实现图像缩放(通过 java.awt.geom的仿射变换结合java.awt.image的各种插值方法实现)
- 在JAVA中针对LIST进行排序
- Java图片缩略图裁剪水印缩放旋转压缩转格式-Thumbnailator图像处理
- 使用OpenCV进行批量图像缩放
- JAVA实现图像缩放(通过 java.awt.geom的仿射变换结合java.awt.image的各种插值方法实现)
- [Android] 使用Matrix矩阵类对图像进行缩放、旋转、对比度、亮度处理
- Java多线程(二) synchronized 针对对象进行锁定
- Java通过thumbnailator对图片进行缩放,裁剪,添加水印等..
- 对gif动图进行缩放等处理(java)
- JAVA实现图像缩放(通过 java.awt.geom的仿射变换结合java.awt.image的各种插值方法实现)
- [Android] 使用Matrix矩阵类对图像进行缩放、旋转、对比度、亮度处理