对lable中的图片进行图像旋转,向右平移,向下平移,二值化,灰度,边缘检测
要求:
一个界面,具体界面内容自行设计但必须符合以下要求
多个操作按钮:
1.图像180°旋转
2.图像向右平移
3.图像向下平移
4.图像二值化
5.图像灰度
6.图像边缘检测
7.打开图片
8.退出
两个标签用于图片显示对比:
1.原图片
2.操作后图片
要求:
1.图片读取路径不能指定
import cv2
import numpy as np
import sys
from PyQt5 import QtWidgets, QtCore, QtGui
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
fname=''
one=0
two=0
three=180
class picture(QWidget):
def __init__(self):
super(picture, self).__init__()
self.resize(900,500)
self.center() #使窗口居中
self.setWindowTitle("label显示图片")
self.setWindowIcon(QIcon('1.jpg'))
self.label = QLabel(self)
self.label.setText(" 显示图片")
self.label.setFixedSize(300, 400)
self.label.move(200,30)
self.label.setStyleSheet("QLabel{background:white;}"
"QLabel{color:rgb(300,300,300,120);font-size:20px;font-weight:bold;font-family:宋体;}"
)
self.label2 = QLabel(self)
self.label2.setText(" 显示图片")
self.label2.setFixedSize(300, 400)
self.label2.move(550, 30)
self.label2.setStyleSheet("QLabel{background:white;}"
"QLabel{color:rgb(300,300,300,120);font-size:20px;font-weight:bold;font-family:宋体;}"
)
btn_1 = QPushButton(self)
btn_1.setText("打开图片")
btn_1.move(30, 30)
btn_1.clicked.connect(self.openimage)
btn_2 = QPushButton(self)
btn_2.setText("图像旋转180")
btn_2.move(30, 80)
btn_2.clicked.connect(self.xaunzhuan180)
btn_3 = QPushButton(self)
btn_3.setText("图像向右平移")
btn_3.move(30, 130)
btn_3.clicked.connect(self.youyi)
btn_4 = QPushButton(self)
btn_4.setText("图像向下平移")
btn_4.move(30, 180)
btn_4.clicked.connect(self.xiayi)
btn_5 = QPushButton(self)
btn_5.setText("图像二值化")
btn_5.move(30, 230)
btn_5.clicked.connect(self.erzhihua)
btn_6 = QPushButton(self)
btn_6.setText("图像灰度")
btn_6.move(30, 280)
btn_6.clicked.connect(self.h