首页 > 代码库 > 彩色照片转换为黑白照片(Color image converted to black and white picture)
彩色照片转换为黑白照片(Color image converted to black and white picture)
This blog will be talking about the color image converted to black and white picture.
The project structure as follow:
The run result:
==========================================================
source code:
==========================================================
/UUUU_Test/src/com/b510/image/clent/Client.java
1 /** 2 * 3 */ 4 package com.b510.image.clent; 5 6 import java.io.File; 7 8 import com.b510.image.common.Common; 9 import com.b510.image.util.ImageUtil;10 11 /**12 * @author Hongten13 * @create 2014-7-1314 * @mail hongtenzone@foxmail.com15 */16 public class Client {17 18 public static void main(String[] args) {19 File input = new File(Common.ORGINAL_IMAGE);20 File out = new File(Common.PROCESSED_IMAGE);21 ImageUtil.changeImge(input, out);22 }23 }
/UUUU_Test/src/com/b510/image/common/Common.java
1 /** 2 * 3 */ 4 package com.b510.image.common; 5 6 /** 7 * @author Hongten 8 * @create 2014-7-13 9 * @mail hongtenzone@foxmail.com10 */11 public class Common {12 13 // Orginal image path14 public static String ORGINAL_IMAGE = "src/com/b510/image/resources/orginal_image.jpg";15 // Processed image path16 public static String PROCESSED_IMAGE = "src/com/b510/image/resources/processed_image.jpg";17 18 public static String PROCESS_SUCCESS = "Processed successfully.....";19 public static String PROCESS_ERROR = "Processing encounters error!";20 }
/UUUU_Test/src/com/b510/image/util/ImageUtil.java
1 /** 2 * 3 */ 4 package com.b510.image.util; 5 6 import java.awt.Image; 7 import java.awt.color.ColorSpace; 8 import java.awt.image.BufferedImage; 9 import java.awt.image.ColorConvertOp;10 import java.io.File;11 import java.io.FileOutputStream;12 import java.io.IOException;13 14 import javax.imageio.ImageIO;15 16 import com.b510.image.common.Common;17 import com.sun.image.codec.jpeg.JPEGCodec;18 import com.sun.image.codec.jpeg.JPEGImageEncoder;19 20 /**21 * @author Hongten22 * @create 2014-7-1323 * @mail hongtenzone@foxmail.com24 */25 public class ImageUtil {26 /**27 * Color image is converted to black and white picture.28 */29 public static void changeImge(File input, File out) {30 try {31 Image image = ImageIO.read(input);32 int srcH = image.getHeight(null);33 int srcW = image.getWidth(null);34 BufferedImage bufferedImage = new BufferedImage(srcW, srcH, BufferedImage.TYPE_3BYTE_BGR);35 bufferedImage.getGraphics().drawImage(image, 0, 0, srcW, srcH, null);36 bufferedImage = new ColorConvertOp(ColorSpace.getInstance(ColorSpace.CS_GRAY), null).filter(bufferedImage, null);37 FileOutputStream fos = new FileOutputStream(out);38 JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(fos);39 encoder.encode(bufferedImage);40 fos.close();41 System.out.println(Common.PROCESS_SUCCESS);42 } catch (IOException e) {43 e.printStackTrace();44 throw new IllegalStateException(Common.PROCESS_ERROR, e);45 }46 }47 48 }
========================================================
More reading,and english is important.
I‘m Hongten
========================================================
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。