pyqt 简单案例

 一、空白的widget窗口


import sys
from PyQt5 import QtWidgets,QtCore

app = QtWidgets.QApplication(sys.argv)
widget = QtWidgets.QWidget()
widget.resize(360,360)
widget.setWindowTitle("helloword")
widget.show()
sys.exit(app.exec_())

需要引入sys模块,会用到sys中的argv参数

需要引入QtWidgets,需要创建一个变量,实例化其中的QWidget类型

app = QtWidgets.QApplication(sys.argv)

sys.exit(app.exec_())是结伴出现的,第一个作用是初始化窗口,一个作用是开启主循环,并当关闭窗口时,返回父进程

二、 opencv展示图片

import cv2  #cv2是个接口

url = 'image/123123.png'
#读入图片
image = cv2.imread(url,0)
print(image)  #numpy类型的三维数组
print(type(image))

#修改图片尺寸大方法
cv2.namedWindow('pic')  #任意大小伸缩,默认大小为零
# image = cv2.resize(image, ( 960, 540))  #修改图片尺寸,分别为x,y

# b,g,r = cv2.split(image)    #分隔图像通道
# cv2.imshow("b",b)   #显示图像
# cv2.imshow('g',g)
# cv2.imshow('r',r)
# image1 = cv2.merge([b,g,r])    #将通道图像合并

# image1 = cv2.add(image,image)   #图像叠加,要求两个图像的尺寸相等,不然不允许做加法运算

# image2 = cv2.flip(image,2)  #将图像沿某一方向进行反转,0默认x轴对称,>0相对与y轴,<0相对于原点

image3 = image[1:500, 10:2000]   #图像的截取

cv2.rectangle(image,(30,30),(180,130),(0,255,0),2,cv2.LINE_AA)   #绘制矩形

#将图像改成灰白
# ret,image2 = cv2.threshold(image,127,255,cv2.THRESH_BINARY)#阈值法获取黑白图像,要有两个返回值,而且还要在image = cv2.imread(url,0)后加零
# image2 = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)    #通道转换法

# image[0: 400, 0: 400] = [0, 0, 255]#修改图片内容
cv2.imshow('pic',image3)  #1.winname显示窗口窗口名,2.显示的内容
cv2.waitKey(0)   #等待,没有等待则会闪退

# cv2.imwrite('img1.png',image)   #将图片另存为

使用到的从cv2成员函数

#cv2.imread()  读取图片
#cv2.imshow() 展示图片
#cv2.resize()    改变图片大小
#cv2.merge([]) 通道合并
#cv2.add() 叠加
#cv2.flip()   拆分图片的rgb
#cv2.imwrite()  保存图片
#cv2.waitKey() 函数的功能是不断刷新图像

#cv2.rectangle()   画矩形,函数原型是

       cv2.rectangle(img, pt1, pt2, color, thickness, lineType, shift )
      参数表示依次为: (图片,长方形框左上角坐标, 长方形框右下角坐标, 字体颜色,字体粗细)

你可能感兴趣的:(Python,pyqt)