def narrowImage(var, lvar, width, height):

    if var.width > 200:
        resizeImage(var, lvar, width, height)

        var.trImageShow.setPixmap(QPixmap(imageConvertion(var)))
        var.size.setText('(%d × %d)' % (var.width, var.height))  # 状态栏显示图像大小
def enlargeImage(var, lvar, width, height):

    if var.width < 800:
        resizeImage(var, lvar, width, height)

        var.trImageShow.setPixmap(QPixmap(imageConvertion(var)))  # 重新显示在Label中
        var.size.setText('(%d × %d)' % (var.width, var.height))  # 状态栏显示图像大小
def GaussianDenoising(var):

    var.GSFlag = True
    #第二的参数是高斯矩阵的大小,第三个参数是标准差,标准差取0时OpenCV会根据高斯矩阵的尺寸自己计算。概括地讲,高斯矩阵的尺寸越大,标准差越大,处理过的图像模糊程度越大。
    # cv2.GaussianBlur(var.img, (var.GSKernel, var.GSKernel), 0)
    var.img = cv2.GaussianBlur(var.img, (19, 19), 0)

    var.imagePixmap = QPixmap.fromImage(imageConvertion(var))
    ISM.openImageLayout(var, var.imagePixmap)  # 显示结果
Example #4
0
def drawRectByOpenCV(var, lvar):

    calculateRelativePosition(var, lvar)  # 计算套索顶点相对位置

    cv2.rectangle(var.img, (var.w0, var.h0), (var.w1, var.h1), (0, 255, 0),
                  1)  # 在图像上画矩形
    cv2.rectangle(var.img_mirror, (var.w0_m, var.h0_m), (var.w1_m, var.h1_m),
                  (0, 255, 0), 1)  # 在img_mirror图像上画矩形

    cv2.imwrite(var.im_path, var.img_mirror)  # 写入硬盘

    var.imagePixmap = QPixmap.fromImage(imageConvertion(var))
    ISM.openImageLayout(var, var.imagePixmap)  # 显示结果
def settDLabelVisible(var):
    if var.tdImageShow.pixmap():                                # 判断是否加载图片
        if var.tdFlag:
            var.coImageShow.setVisible(False)
            var.saImageShow.setVisible(False)
            var.trImageShow.setVisible(False)

            var.tdImageShow.setPixmap(QPixmap(imageConvertion(var)))
            var.tdImageShow.setFixedSize(var.width, var.height)
            var.coFlag = False
            setToolDisable(var)                                 # 放大、缩小工具不可用
        else:
            restoreImageToDefault(var, var.tdImageShow)
            var.coImageShow.setVisible(True)
            var.saImageShow.setVisible(True)
            var.trImageShow.setVisible(True)
            var.tdFlag = True
def settrLabelVisible(var):
    if var.trImageShow.pixmap():                                    # 判断是否加载图片
        if var.trFlag:
            var.coImageShow.setVisible(False)
            var.saImageShow.setVisible(False)
            var.tdImageShow.setVisible(False)

            var.trImageShow.setPixmap(QPixmap(imageConvertion(var)))    # 重新显示图像
            var.trImageShow.setFixedSize(var.width, var.height)         # 设定大小
            var.trFlag = False
            setToolDisable(var)                                         # 放大、缩小工具不可用
        else:
            # 由于双击改变图像大小后,再双击变回原来大小时,实际图像的大小已经改变,但是这里没有体现
            restoreImageToDefault(var, var.trImageShow)
            var.coImageShow.setVisible(True)
            var.saImageShow.setVisible(True)
            var.tdImageShow.setVisible(True)
            var.trFlag = True