美颜相机-

news/2024/10/31 1:26:50/
  1. 创建页面
    窗体 按钮 字体
 public void showUI(){JFrame jf = new JFrame("图像处理");jf.setSize(1700,1200);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jf.setLayout(new FlowLayout());//创建按钮对象 |设置属性 文本 字体(font) 尺寸 背景颜色 字体大小 监听器Font font =new Font("楷体",Font .BOLD,16);for (int i = 0; i < strs.length; i++) {JButton btn =new JButton(strs[i]);btn .setBackground(Color.lightGray);btn .setFont(font );jf.add(btn);jf.setVisible(true);public static void main(String[] args) {ImagePad imagePad=new ImagePad();imagePad.showUI();
  1. 创建监听器
    Switch case语句进行选择
public class ImageListener implements ActionListener {@Overridepublic void actionPerformed(ActionEvent e) {//获取按钮上的字符串String btnstr =e.getActionCommand();System.out.println("点击了:"+btnstr);// 选择句式1/*if(btnStr.equals ("原图")){}else if(btnStr.equals ("灰度")){}*///选择句式2/*switch (btnStr){case "原图":System.out.println ("原图");imgtools.drawImage (imageArr,g);break;case "灰度":break;*/switch (btnstr){case"原图":System.out.println("原图");break;case"灰度":break;case"二值化":break;case"马赛克":break;}}
}
将监听器与窗体按钮创建关联
 ImageListener imageListener=new ImageListener();btn.addActionListener(imageListener);
  1. 创建imagetools
    将图片的宽高创建二维数组
public class ImageTools {int x=100;int y=100;public int [][] getImagePiexArry(String path){//图片路径File file=new File(path);BufferedImage bufferedImage=null;try {bufferedImage= ImageIO.read(file);} catch (IOException e) {throw new RuntimeException(e);}int width=bufferedImage.getWidth();int heigth=bufferedImage.getHeight();//根据宽高创建二维数组int[][] imArr=new int[width][heigth];System.out.println(imArr.length);//整个二维数组法人长度(个数)System.out.println(imArr[0].length);//二维数组中第一个一维数组的长度(个数)//遍历循环for (int i = 0; i < imArr.length; i++) {for (int j = 0; j < imArr[i].length; j++) {imArr[i][j]=bufferedImage.getRGB(i,j);}}return  imArr;}
循环遍历/原图/灰度/二值化
 //原图public void drawImage(int [][] imgArr,Graphics g){for (int i = 0; i < imgArr.length; i++) {for (int j = 0; j < imgArr[i].length; j++) {int pixnum=imgArr[i][j];Color color =new Color(pixnum);g.setColor(color );g.fillRect(x+i,y+j,1,1);}}}//灰度public void drawGrayImage(int [][] imgArr,Graphics g){for (int i = 0; i < imgArr.length; i++) {for (int j = 0; j < imgArr[i].length; j++) {int pixnum=imgArr[i][j];//拆分像素int red=(pixnum>>16)&225;int green=(pixnum>>8)&225;int  blue=(pixnum>>0)&225;int gray=(red+green+blue)/3;Color color =new Color(gray,gray,gray);g.setColor(color );g.fillRect(x+i,y+j,1,1);}}}//二值化public void drawBinaryImage(int [][]imArr,Graphics g){for (int i = 0; i < imArr.length; i++) {for (int j = 0; j < imArr[i].length; j++) {int pixnum=imArr[i][j];//拆分为rgbint red=(pixnum>>16)&225;int green=(pixnum>>8)&225;int  blue=(pixnum>>0)&225;//灰度图r=g=b//二值化 定一个标准做二分int gray=(red+green+blue)/3;if (gray<112) {g.setColor(Color.white);}else {g.setColor(Color.black);}g.fillRect(x+i,y+j,1,1);}}}
在监听器中创建imagetools
  ImageTools imagetools=new ImageTools();
  1. 在监听器中创建画笔和窗口连接
  Graphics g;
      imageListener.g=jf.getGraphics();
  1. 在监听器中引入图片的路径
 int[][]imageArr;{String path="C:\\Users\\13517\\Desktop\\编2\\图1.png";imageArr=imagetools.getImagePiexArry(path);}

http://www.ppmy.cn/news/437100.html

相关文章

java实现美颜相机

看下实现效果 准备工作我们需要导入webcam包 ## 视频图像获取&#xff1a; http://webcam-capture.sarxos.pl/ ## 导包&#xff1a; - Eclipse : - * 项目: - 1: 右键项目名 Build Path - Config BuildPath - Lib - add Jars 选中 - IDEA : - 1:右键项目名 Module …

三.美颜相机开发

美颜相机开发 UI的使用&#xff1a; JFrame JButton Listener: 加入按钮实现点击什么滤镜特效就绘制什么滤镜&#xff01; 代码&#xff1a; 首先对UI进行编写 public class ImagePad {//使用字符串储存按钮名称String[] strs {"打开", "保存", &q…

flutter美颜相机插件

flutter美颜相机插件 beauty_cam&#xff08;github&#xff09; beauty_cam&#xff08;gitee&#xff09; beauty_cam&#xff08;pub.dev&#xff09; beauty_cam&#xff08;pub.flutter-io.cn&#xff09; flutter美颜相机 目前功能&#xff1a; 开关美颜拍照拍视频切…

JAVA PC端美颜相机

这是我在蓝杰做的第一个项目:PC端美颜相机。这个小程序的本质就是对一张图像做处理。存储在计算机的图像信息实际上是一个个像素点&#xff0c;不同的像素点有不同的rgb值&#xff0c;修改像素点的rgb值我们就可以将图像处理成我们想要的效果。 首先我们需要创建一个图形界面作…

美颜相机-磨皮实现

主要参考了《使用OPENCV简单实现具有肤质保留功能的磨皮增白算法》这篇文章&#xff0c;我使用了python实现&#xff0c;最主要的是直接按原文公式算的话&#xff0c;我这里一直有个问题就是原图中纯色的地方处理后会出现色彩斑点而且非常严重&#xff0c;不知道原作者是否有这…

美颜相机毕设项目零基础教学

美颜相机开发手册 1.数字化图像底层原理 2.文件读取图片&#xff0c;操作图片矩阵 3.图像滤镜算法实现 4.项目结构设计 5.图像存储&#xff0c;附加功能实现&#xff08;画笔/P图/贴纸…&#xff09; 6.卷积图像处理算法实现 7.图像识别原理 8.二维码的生成与识别 9.以…

美颜相机的基本功能实现

美颜相机的基本功能实现 基本知识 在学习了在标准绘制图形库中进行简单的递归图像实现后&#xff0c;我们把目光聚焦到了对于复杂图片文件的处理上&#xff0c;在这里需要简单介绍一下关于图像色彩的知识&#xff0c;以及缓存图片类的介绍。 图形色彩参数“ARGB” 在一个复…

linux 相机软件,镜像相机app

镜像相机app带给用户更多特别的拍摄滤镜和效果&#xff0c;这里提供了两种拍摄方式&#xff0c;一种是普通的拍摄效果&#xff0c;还有一种拍摄出来的是左右镜面对称的效果&#xff0c;并且镜像相机app中随时可以进行图片编辑和美化功能&#xff0c;强大的修图和丰富的滤镜贴纸…