PyQt类学习后的自我总结目录笔记

PyQt学习后的自我总结,PIL目录笔记
我把类暂分为三大类:[基本类、控件类、特定类]

  1. 基本类:字体,颜色,大小等;
    衍生类:----
  2. 控件类:Layouts、Spacers、Buttons、Item Views、Item Widgets、Containers、Input Widgets 、Display Widgets
  3. 特定类:PIL
    做一些特定具体的事,又分为展示类,工具类[注:自已理解说明,并不专业严谨]
  • 第一层理解:我把展示类比作一张纸,工具类比作笔,笔在纸上作画,写字,离开了纸,笔就没有了作用。工具类[ImageDraw]在展示类[Image]上执行,在展示类上显示结果。
  • 第二层理解:笔在纸上写字作画,人握笔才行;工具类在展示类上执行,工具类须实例化,也叫对象化。
    第三层理解:纸不会凭空产生,肯定要有个人生产它,对纸做些操作,同理展示类实例化,才可以被展示操作,而实例化的展示类,可以被new,open,save等等
  • 第四层理解:圆规在纸上画圆,功能单一,随便叫个人就可以画,可以不知道那个人的名字,同理工具类只做一次简单的动作,就可以匿名调用;
    笔可以上纸上画直线,写字,画画,那拥有这支笔的人最好要有名字,同理工具类可以做许多事,拥有工具类的对象也要有一个名字,就是变量名,通过变量名就可以做这个工具类可以做的事。

一、基本类

基础类:QFont、QColor、QSize……

衍生类:

QFont衍生
QFont 为绘画文本提供制定的字体
QFontComboBox 提供了选择字体族的下拉列表框
QFontDatabase 提供了可以在Window 操作系统下能够使用的字体
QFontDialog 用来选择一个指定的字体
QFontEngineInfo 用来描述一个指定的字体引擎插件
QFontEnginePlugin 累提供了字体仓库插件的基础累, 用于嵌入式linux
QFontInfo 包含了一个字体的常规信息

QColor衍生
QColorDialog

二、控件类

三、特定类

PIL

1、 展示类: 比作一张纸。

Image (new、open、save、convert、split、alpha_composite……)

Python的PIL库的Image模块
PIL库image模块的各方法

#   打开图片
im = Image.open("*.jpg")
#   新建图片
newim = Image.new("RGBA",im.size,(255,255,255,0)
#  图片模式转化
regaim = im.convert("RGBA")
#  图片分层
alpha = rgbaim.split()[3]
#  图片合并
Image.alpha_composite(im,newim)
#  图片保存
newim.save("*.png")   // 注意“RGBA”模式不能存为jpg格式,不支持透明通道。
------------
array转换成image
img.flags.writeable = True # 将数组改为读写模式
Image.fromarray(np.uint8(img))

2、 工具类: 比作笔等工具

1. 绘画写字 ImageDraw (Draw……)

PIL的ImageDraw模块功能

模块[ ImageDraw ]比作工具箱,工具类[Draw]比做工具,方法[line、rectangle……]众多表示工具可以做许多的事,所以尽量要命名调用。

from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont

#打开图片
image = Image.open("*.jpg")
#创建绘制对象
draw = ImageDraw.Draw(image)
#绘制直线
draw.line((20, 20, 150, 150), 'cyan')
#绘制矩形
draw.rectangle((100, 200, 300, 400), 'black', 'red')
 #绘制弧
draw.arc((100, 200, 300, 400), 0, 180, 'yellow')
draw.arc((100, 200, 300, 400), -90, 0, 'green')
#绘制弦
draw.chord((350, 50, 500, 200), 0, 120, 'khaki', 'orange')
#绘制圆饼图
draw.pieslice((350, 50, 500, 200), -150, -30, 'pink', 'crimson')
#绘制椭圆
draw.ellipse((350, 300, 500, 400), 'yellowgreen', 'wheat')
#外切矩形为正方形时椭圆即为圆
draw.ellipse((550, 50, 600, 100), 'seagreen', 'skyblue') 
#绘制多边形
draw.polygon((150, 180, 200, 180, 250, 120, 230, 90, 130, 100), 'olive', 'hotpink')
 
#绘制文本
font = ImageFont.truetype("consola.ttf", 40, encoding="unic")    #设置字体
draw.text((100, 50), u'Hello World', 'fuchsia', font)
 
image.show()
2. 图像的增强 ImageEnhance (Brightness、Color、Contrast、Sharpness)

PIL的ImageEnhance模块
模块[ImageEnhance]比作工具箱,工具类[Brightness]比做工具,方法[enhance]表示工具做的事。因为方法单一简单,所以可以匿名调用。

from PIL import Image
from PIL import ImageEnhance
#原始图像
image = Image.open('lena.jpg')
image.show()
 
#亮度增强
brightness = 1.5
image_brightened = ImageEnhance.Brightness(image).enhance(brightness)
image_brightened.show()
 
#色度增强
color = 1.5
image_colored = ImageEnhance.Color(image).enh_col.enhance(color)
image_colored.show()
 
#对比度增强
contrast = 1.5
image_contrasted = ImageEnhance.Contrast(image).enh_con.enhance(contrast)
image_contrasted.show()
 
#锐度增强
enh_sha = ImageEnhance.Sharpness(image)
sharpness = 3.0
image_sharped = enh_sha.enhance(sharpness)
image_sharped.show()

PIL的ImageChops模块功能
学习PIL图像处理库

3、基本类:

ImageFont
Python图像处理库PIL的ImageFont模块介绍

--------------------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyQt是一个用Python语言开发的开源库,它提供了丰富的图形界面组件和功能,适用于开发各种桌面应用程序。而深度学习是一种机器学习的技术,它将深度神经网络应用于分任务中。 要实现深度学习软件开发,可以使用PyQt结合深度学习库(如TensorFlow、PyTorch)来完成。以下是一般开发流程: 1. 界面设计:使用PyQt的图形界面设计工具(Qt Designer)创建软件界面,包括按钮、文本框、图像显示等组件,并设置相应的布局。 2. 数据准备:准备用于训练和测试的数据集。可以从已有的数据集中读取数据,并进行预处理,例如图像的尺寸调整、数据的标准化等。 3. 深度学习模型设计:选择适合分任务的深度学习模型,可以是传统的卷积神经网络(CNN)或更复杂的模型(如ResNet、VGG),并使用深度学习库来搭建网络结构。 4. 模型训练:将准备好的数据集输入到深度学习模型中,并使用训练算法对模型进行训练。可以设置训练的参数,如学习率、批大小、迭代次数等。 5. 模型评估:使用测试数据对训练好的模型进行评估,计算出分准确率等指标,判断模型的性能。 6. 软件集成:将深度学习模型集成到PyQt的界面中,通过设置按钮事件等方式实现图像的输入和预测输出。 7. 用户交互:通过PyQt提供的界面组件和功能,实现用户与软件的交互,例如选择图片、预测图像分等。 8. 软件调试和优化:对软件进行调试,验证是否符合预期功能。根据实际需要,可以对模型进行优化,改进软件的性能。 通过以上步骤,利用PyQt实现深度学习软件开发就可以实现。这样开发出的软件可以提供一个用户友好的界面,使用户可以方便地输入数据进行分预测,提高深度学习模型的应用效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值