返回顶部
首页 > 资讯 > 后端开发 > Python >图片的美白与美化
  • 400
分享到

图片的美白与美化

人工智能python机器学习 2023-09-12 13:09:11 400人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

 博主简介 博主是一名大二学生,主攻人工智能研究。感谢让我们在CSDN相遇,博主致力于在这里分享关于人工智能,c++,python,爬虫等方面知识的分享。 如果有需要的小伙伴可以关注博主,博主会继续更新的,如果有错误之处,大家可以指正

 博主简介

博主是一名大二学生,主攻人工智能研究。感谢让我们在CSDN相遇,博主致力于在这里分享关于人工智能,c++python爬虫等方面知识的分享。 如果有需要的小伙伴可以关注博主,博主会继续更新的,如果有错误之处,大家可以指正。

专栏简介:   本专栏主要研究计算机视觉,涉及算法,案例实践,网络模型等知识。包括一些常用的数据处理算法,也会介绍很多的Python第三方库。如果需要,点击这里订阅专栏   。

给大家分享一个我很喜欢的一句话:“每天多努力一点,不为别的,只为日后,能够多一些选择,选择舒心的日子,选择自己喜欢的人!”


目录

添加图形与文字

基础线条图形操作

爱心图片

图像美白

 图片直方图均衡化


前面介绍了如何提取图像中的各种特征,包括颜色特征,几何特征、局部特征等,也进行了各种特征算法学习。那么本节我们来学习美化图片。众所周知,现在各大平台惊现“照骗”,修图技术的发展,让越来越多的人迷失在幻境中,男的批成女的,等等。对于我们计算机专业的学生来说,理解这些功能的底层代码是非常重要的。

添加图形与文字

基础线条图形操作

首先给图片增加一条线或者一些多边形,除了这些,还可以增加一些特殊的图案。一般来说,增加形状的函数由如下几个参数:原图(img)、增加的图型中心(center)、图形的大小(size)、颜色(color)、线条粗细(thinkness)。常用的函数:cv2.circle()画一个圆,cv2.fillPoly()画一个任意多边形、cv2.line()画一条线等。

import cv2import numpy as npimg=cv2.imread('F:\Image\\test11.jpg')w,h,d=img.shape#加圆cv2.circle(img,(int(w/3),int(h/2)),int(w/4),(0,0,255),2)cv2.imshow('显示图片',img)cv2.waiTKEy()

爱心图片

 当然,除了这种简单的图形,还可以来点复杂的,比如在你和你的女朋友之间加一个爱心。

博主没有女朋友,也没有合照,只能随便用一张图片了。

 言归正传,下面来展示如何画爱心:

import cv2import numpy as npimg=cv2.imread('F:\Image\\test8.jpg')#绘制椭圆弧cv2.ellipse(img,(100,350),(100,200),180,30,150,(0,0,255),1)cv2.ellipse(img,(275,350),(100,200),180,30,150,(0,0,255),1)#绘制直线cv2.line(img,(12,250),(187,450),(0,0,255),1)cv2.line(img,(362,250),(187,450),(0,0,255),1)#显示图片cv2.imshow('2',img)cv2.waitKey(0)

爱心就显示出来了,当然,就一个爱心可是不够的,是不是应该在图像上加一句爱她的话喃,话不多说,安排!

OpenCV中绘制文字的函数cv2.putText(),可选参数有img(输入图片)、text(输入文字)、origin(文字左上角坐标)、font(字体)、scale(大小)、color(颜色)、thinkness(线条粗细)。

import cv2import numpy as npimg=cv2.imread('F:\Image\\test8.jpg')w,h,d=img.shape#绘制椭圆弧cv2.ellipse(img,(100,350),(100,200),180,30,150,(0,0,255),1)cv2.ellipse(img,(275,350),(100,200),180,30,150,(0,0,255),1)#绘制直线cv2.line(img,(12,250),(187,450),(0,0,255),1)cv2.line(img,(362,250),(187,450),(0,0,255),1)#加入文字cv2.putText(img,'I love you',(0,int(h/1.5)),cv2.FONT_HERSHEY_PLAIN,4,(0,0,255),0)#显示图片cv2.imshow('2',img)cv2.waitKey(0)

 现在就可以送给你们的女朋友了。

图像美白

了解了一些简单的操作,现在开始我们真正的修图。磨皮,美白。

所谓的美白,其实就是将图像的亮度提高,可以在HSV颜色空间中进行提高亮度V即可,也可以在RGB模式下将颜色调为白色。

import numpy as npimport cv2img=cv2.imread('F:\Image\\test10.jpg')w,h,d=img.shape#增强亮度for i in range(w):    for j in range(h):        (b,g,r)=img[i,j]        b=min(255,b+40)        g=min(255,g+40)        r=min(255,r+40)        img[i,j]=(b,g,r)#显示图片cv2.imshow('1',img)cv2.waitKey(0)

 对比一下,是不是黑人小哥变白了。但是这个只是进行打光,美白的操作也和这个差不多。但是需要注意的是,美白更注重白色,所以对红色部分就不需要改变,而是按照比例对绿色,蓝色进行提高。同时,我们在美白的时候,需要对人体美白,而不是所有,所以最后好是对指定区域进行美白。

#进行美白,注意单个颜色不能超过255for i in range(w):    for j in range(h):        (b,g,r)=img[i,j]        b=min(255,b*1.4)        g=min(255,g*1.3)        img[i,j]=(b,g,r)

 这样进行处理后的图像就会白很多,如果要求比较高的,那么我们就进行磨皮。需要使用到cv2.bilateralFilter()函数双边滤波与高斯滤波相比能更好的保存图像的边缘信息,这是由于其不但使用了一个与空间距离相关的高斯函数,还使用了一个与灰度距离相关的高斯函数。

img=cv2.bilateralFilter(img,10,30,30)

只需要将三部分进行结合一下,就大功告成了。来吧,展示:

import numpy as npimport cv2img=cv2.imread('F:\Image\\test10.jpg')w,h,d=img.shapeimg=cv2.bilateralFilter(img,10,30,30)#增强亮度for i in range(w):    for j in range(h):        (b,g,r)=img[i,j]        b=min(255,b+40)        g=min(255,g+40)        r=min(255,r+40)        img[i,j]=(b,g,r)#进行美白,注意单个颜色不能超过255for i in range(w):    for j in range(h):        (b,g,r)=img[i,j]        b=min(255,b*1.4)        g=min(255,g*1.3)        img[i,j]=(b,g,r)#显示图片cv2.imshow('1',img)cv2.waitKey(0)

 是不是白了很多喃。快去给你的女友试试吧。

 图片直方图均衡化

前面介绍了一些简单的操作,当然不能就这么简单,我们来试试直方图均衡话图像。简单的来说,就是将图片的色彩均衡化,让图片更加饱满,看起来不那么违和。前面介绍了直方图的函数,这里就不过多介绍了。下面我们用一个小姐姐的图片来演示一下。

import cv2import numpy as npimg=cv2.imread('F:\Image\\test4.jpg')#进行直方图均衡化#通道分解(b,g,r)=cv2.split(img)b=cv2.equalizeHist(b)g=cv2.equalizeHist(g)r=cv2.equalizeHist(r)#通道合成result=cv2.merge((b,g,r))#图片展示cv2.imshow('1',img)cv2.waitKey(0)

   (a)颜色直方图均衡化的图片                                    (b)原图

第一张图是经过处理后的图片,第二张则是原图,可以对比一下,两种图片差别很小,但是第一张的色彩更饱和一点。其他的博主我也看不出来,这个只是给大家一个示范。

好了,本节的内容就到此结束了!关注博主不迷路,下一节我们学习图像的修复和去噪。拜拜了你嘞!

特别提醒:文章中所用的图片是博主从网上下载下来的,并无任何恶意,只是用来作为案例使用,如有侵权,告知博主!谢谢!

点赞加关注不迷路

来源地址:https://blog.csdn.net/qq_59931372/article/details/129480740

--结束END--

本文标题: 图片的美白与美化

本文链接: https://lsjlt.com/news/404571.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 图片的美白与美化
     博主简介 博主是一名大二学生,主攻人工智能研究。感谢让我们在CSDN相遇,博主致力于在这里分享关于人工智能,c++,Python,爬虫等方面知识的分享。 如果有需要的小伙伴可以关注博主,博主会继续更新的,如果有错误之处,大家可以指正...
    99+
    2023-09-12
    人工智能 python 机器学习
  • python 抓取美女图片
    之前见过别人写的抓取图片的python脚本,自己之前用正则写过,最近看到beautifulsoup 所以拿来练练手# -*- coding:utf8 -*- from bs4 import BeautifulSoup import os, ...
    99+
    2023-01-31
    美女 图片 python
  • python美化图形化界面设计,pythontkinter界面美化
    大家好,本文将围绕python美化图形化界面设计展开说明,pythontkinter界面美化是一个很多人都想弄明白的事情,想搞清楚python美化输出模块需要先了解以下几个事情。 1、python如何做界面 PyQt,一个基于Qt的Py...
    99+
    2023-10-09
    小发猫
  • CSS怎么使用图片美化菜单效果
    这篇文章主要讲解了“CSS怎么使用图片美化菜单效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS怎么使用图片美化菜单效果”吧!本文实例讲述了CSS使用...
    99+
    2024-04-02
  • python爬取网站美女图片
    今天周五,项目刚刚上线完,有些时间,闲着无聊,继续复习爬虫,这次打算爬取网站的美女图片。得先找到目标,然后目标网站还不会反爬虫,因为自己只是小白,好了开始。寻找目标,发现了目标,哈哈 http://www.meizitu.com 里面图片按...
    99+
    2023-01-31
    美女 图片 网站
  • win8系统中使用Metro应用图标美化来美化电脑图标
    常规的电脑图标,在经过多年的一成不变后也会变得腻味,但是在Metro应用可以美化图标,来达到一定的图标效果。那么在win8 系统中的Metro应用图标美化使用技巧要怎么的使用呢?我们一起来看看吧! Metr...
    99+
    2022-06-04
    图标 系统 电脑
  • python与美图,呵呵,你懂的
    #!/usr/bin/python import re import urllib #def getHtml(url): # urllib.open(url) def getHtml(url...
    99+
    2023-01-31
    美图 你懂 python
  • Python+matplotlib实现折线图的美化
    目录1. 导入包2. 获得数据3. 对数据做一些预处理4. 画图4.1 优化:添加点4.2 优化:设置刻度4.3 优化:设置填充4.4 优化:设置填充颜色5. 把功能打包成函数6.测...
    99+
    2024-04-02
  • Python PyQt5-图形界面的美化操作
    前言 今天就来学习一下图形设计界面的美化,首先我们知道 QtDesigner设计出来的界面默认是不太怎么美观的。所以在以后的实际开发中很多界面都是要美化的。那么现在来看看具体怎么美化...
    99+
    2024-04-02
  • VUE D3.js与Vue.js:动态图表与数据可视化的完美结合
    Vue D3.js简介 Vue D3.js 是一个基于 Vue.js 的数据可视化库,允许您轻松地创建动态图表和数据可视化。它基于 D3.js,这是一个流行的JavaScript库,用于创建交互式数据可视化。Vue D3.js 将D3.j...
    99+
    2024-02-27
    Vue D3.js、Vue.js、动态图表、数据可视化
  • python制作花瓣网美女图片爬虫
    花瓣图片的加载使用了延迟加载的技术,源代码只能下载20多张图片,修改后基本能下载所有的了,只是速度有点慢,后面再优化下 import urllib, urllib2, re, sys, os,reque...
    99+
    2022-06-04
    爬虫 花瓣 美女
  • Vue.js WebGL 与 Babylon.js:构建精美的 3D 图形
    Vue.js WebGL:灵活性十足 Vue.js WebGL 使用 WebGL API 直接与图形硬件通信,从而实现低级控制和更高的灵活性。它允许开发人员直接操作顶点和着色器,实现高度定制的图形效果。 Babylon.js:开箱即用 另...
    99+
    2024-04-02
  • Python DPED机器学习之实现照片美化
    目录前言环境部署项目结构tensorflow安装其他依赖安装VGG-19下载项目运行准备图片素材测试效果前言 最近发现了一个可以把照片美化的项目,自己玩了玩,挺有意思的,分享一下。 ...
    99+
    2024-04-02
  • 教你使用Python提取视频中的美女图片
    目录前言安装模块you-getOpenCV结束前言 人类都是视觉动物,不管是男生还是女生看到漂亮的小姐姐、小哥哥就想截图保存下来。可是截图会对画质会产生损耗,截取的 画面不规整,像素...
    99+
    2024-04-02
  • Win10内置图片工具如何旋转图片让它呈现不一样的美
      在Win10中,打开图片能够显示,那是因为Win10设置了默认的图片软件。Win10系统内置有图片软件,功能还挺强的,现在来看看用它如何旋转图片。   用WIN10自带照片软件打开你要旋转照片或图片   点击图片部...
    99+
    2023-06-11
    Win10 旋转图片 内置 图片 工具
  • 如何美化你的ubuntu
    现在就一个ubuntu系统,当然希望它很漂亮啦,自己可以试着玩玩,搞个Mac OS X主题风格,苹果的界面, 苹果的logo。安装Unity Tweak Tool——实现桌面,图标,主题的切换...
    99+
    2023-06-05
  • 美化你的Xfce桌面
    Xfce的鼎鼎大名你是不是早有耳闻了?Xfce是一个很好的轻量级桌面环境,占用系统资源少是他的优点,你可能会在一些嵌入式系统中见到他的身影,但他也有一个缺点,那就是默认的界面看起来有点旧。但这是不Xf...
    99+
    2023-08-31
    linux 运维 服务器
  • 完美解决phpcms图片太大撑破表格图片自适应图片按比例缩小
    css Code复制内容到剪贴板 img,a img{     border:0;      margin...
    99+
    2022-06-12
    phpcms 图片 表格 自适应 缩小
  • Python DPED机器学习怎么实现照片美化
    这篇文章主要介绍“Python DPED机器学习怎么实现照片美化”,在日常操作中,相信很多人在Python DPED机器学习怎么实现照片美化问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”P...
    99+
    2023-06-21
  • 生成精美代码图片的工具Carbon如何使用
    小编给大家分享一下生成精美代码图片的工具Carbon如何使用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、前言carbon,碳棒的意思。功能非常强大,操作很方...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作