精华内容
下载资源
问答
  • 我在使用这篇博客进行Python UI界面开发环境搭建时遇到Error in input file: no element found: line 1, column 0报错 搜遍网上帖子,都说是环境变量的问题,我将所有相关目录都加入环境变量,依然未解决问题。 后来...

    一般Python UI界面开发环境搭建,请参考https://www.jianshu.com/p/094928ac0b73,很详细。
    我在使用这篇博客进行Python UI界面开发环境搭建时遇到Error in input file: no element found: line 1, column 0报错
    搜遍网上帖子,都说是环境变量的问题,我将所有相关目录都加入环境变量,依然未解决问题。
    后来发现在运行配置好的PyUi,需要按照下图所示,将鼠标点在工程目录下的ui文件上,才能正确运行。
    工程文件目录
    帖子在配置PyUi时

    Name:PyUi

    program:pyuic的安装路径 (例如我的位置是C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts\pyuic5.exe)

    parameter:FileNameFileName -o FileNameWithoutExtensionFileNameWithoutExtension.py

    directory: $FileDir $

    其中parameter的FileName即指鼠标指向的文件,program指你想运行程序的位置,parameter指你想此程序进行的动作,directory指程序运行原文件和结果存放位置
    整个配置的运行正常,运行log显示:G:\Anaconda\Scripts\pyuic5.exe ui.ui -o ui.py
    意思是用G:\Anaconda\Scripts\pyuic5.exe将ui.ui转换成ui.py,运行结果保存在directory配置的地址中。

    展开全文
  • 在本文里我们给大家整理了关于pythonUI界面的方法和具体步骤,对此有需要的朋友们可以跟着学习参考下。
  • 摘要:这篇博文介绍基于深度卷积神经网络实现的人脸表情识别系统,系统程序由...博文要点如下:表情识别数据集、搭建表情识别的模型、数据增强的批量训练、系统UI界面的实现。点击跳转至博文涉及的全部文件下载页。

    人脸表情识别介绍与演示视频(视频链接:https://www.bilibili.com/video/BV18C4y1H7mH/)


    图片展示

    摘要:这篇博文介绍基于深度卷积神经网络实现的人脸表情识别系统,系统程序由Keras, OpenCv, PyQt5的库实现,训练测试集采用fer2013表情库。如图系统可通过摄像头获取实时画面并识别其中的人脸表情,也可以通过读取图片识别,本文提供完整的程序文件并详细介绍其实现过程。博文要点如下:

    点击跳转至博文涉及的全部文件下载页
    链接:博主在面包多网站上的完整资源下载页

    图片展示

    1. 前言

        在这个人工智能成为超级大热门的时代,人脸表情识别已成为其中的一项研究热点,而卷积神经网络、深度信念网络和多层感知器等相关算法在人脸面部表情识别领域的运用最为广泛。面部的表情中包含了太多的信息,轻微的表情变化都会反映出人心理的变化,可想而知如果机器能敏锐地识别人脸中表达的情感该是多么令人兴奋的事。

        学习和研究了挺久的深度学习,偶然看到IEEE上面一篇质量很高的文章,里面介绍的是利用深度神经网络实现的面部表情识别,研读下来让我深受启发。于是自己动手做了这个项目,如今SCI论文已投稿,这里特此将前期工作作个总结,希望能给类似工作的朋友带来一点帮助。由于论文尚未公开,这里使用的是已有的模型——如今CNN的主流框架之mini_XCEPTION,该模型性能也已是不错的了,论文中改进的更高性能模型尚不便给出,后面会分享给大家,敬请关注。


    2. 表情识别数据集

        目前,现有的公开的人脸表情数据集比较少,并且数量级比较小。比较有名的广泛用于人脸表情识别系统的数据集Extended Cohn-Kanada (CK+)是由P.Lucy收集的。CK+数据集包含123 个对象的327 个被标记的表情图片序列,共分为正常、生气、蔑视、厌恶、恐惧、开心和伤心七种表情。对于每一个图片序列,只有最后一帧被提供了表情标签,所以共有327 个图像被标记。为了增加数据,我们把每个视频序列的最后三帧图像作为训练样本。这样CK+数据总共被标记的有981 张图片。这个数据库是人脸表情识别中比较流行的一个数据库,很多文章都会用到这个数据做测试,可通过下面的链接下载。
    官网链接:The Extended Cohn-Kanade Dataset(CK+)
    网盘链接:百度网盘下载(提取码:8r15

    图片展示

        KaggleKaggle人脸表情分析比赛提供的一个数据集。该数据集含28709 张训练样本,3859 张验证数据集和3859 张测试样本,共35887 张包含生气、厌恶、恐惧、高兴、悲伤、惊讶和正常七种类别的图像,图像分辨率为48×48。该数据集中的图像大都在平面和非平面上有旋转,并且很多图像都有手、头发和围巾等的遮挡物的遮挡。该数据库是2013年Kaggle比赛的数据,由于这个数据库大多是从网络爬虫下载的,存在一定的误差性。这个数据库的人为准确率是65%±5%
    官网链接:FER2013
    网盘链接:百度网盘下载(提取码:t7xj

    图片展示

        由于FER2013数据集数据更加齐全,同时更加符合实际生活的场景,所以这里主要选取FER2013训练和测试模型。为了防止网络过快地过拟合,可以人为的做一些图像变换,例如翻转,旋转,切割等。上述操作称为数据增强。数据操作还有另一大好处是扩大数据库的数据量,使得训练的网络鲁棒性更强。下载数据集保存在fer2013的文件夹下,为了对数据集进行处理,采用如下代码载入和进行图片预处理:

    import pandas as pd
    import cv2
    import numpy as np
    
    dataset_path = 'fer2013/fer2013/fer2013.csv' # 文件保存位置
    image_size=(48,48) # 图片大小
    
    # 载入数据
    def load_fer2013():
            data = pd.read_csv(dataset_path)
            pixels = data['pixels'].tolist()
            width, height = 48, 48
            faces = []
            for pixel_sequence in pixels:
                face = [int(pixel) for pixel in pixel_sequence.split(' ')]
                face = np.asarray(face).reshape(width, height)
                face = cv2.resize(face.astype('uint8'),image_size)
                faces.append(face.astype('float32'))
            faces = np.asarray(faces)
            faces = np.expand_dims(faces, -1)
            emotions = pd.get_dummies(data['emotion']).as_matrix()
            return faces, emotions
    
    # 将数据归一化
    def preprocess_input(x, v2=True):
        x = x.astype('float32')
        x = x / 255.0
        if v2:
            x = x - 0.5
            x = x * 2.0
        return x
    

        载入数据后将数据集划分为训练集和测试集,在程序中调用上面的函数代码如下:

    from load_and_process import load_fer2013
    from load_and_process import preprocess_input
    from sklearn.model_selection import train_test_split
    
    # 载入数据集
    faces, emotions = load_fer2013()
    faces = preprocess_input(faces)
    num_samples, num_classes = emotions.shape
    
    # 划分训练、测试集
    xtrain, xtest,ytrain,ytest = train_test_split(faces, emotions,test_size=0.2,shuffle=True)
    

    3. 搭建表情识别的模型

        接下来就是搭建表情识别的模型了,这里用到的是CNN的主流框架之mini_XCEPTIONXCEPTIONGoogleInception后提出的对Inception v3的另一种改进,主要是采用深度可分离的卷积(depthwise separable convolution)来替换原来Inception v3中的卷积操作。XCEPTION的网络结构在ImageNet数据集(Inception v3的设计解决目标)上略优于Inception v3,并且在包含3.5亿个图像甚至更大的图像分类数据集上明显优于Inception v3,而两个结构保持了相同数目的参数,性能增益来自于更加有效地使用模型参数,详细可参考论文:Xception: Deep Learning with Depthwise Separable Convolutions,论文Real-time Convolutional Neural Networks for Emotion and Gender Classification等。

    图片展示

        既然这样的网络能获得更好结果又是主流,那当然有必要作为对比算法实现以下了,这里博主模型这部分的代码引用了GitHub:https://github.com/oarriaga/face_classification中的模型(其他地方也能找到这个模型的类似代码),模型框图如上图所示,其代码如下:

    def mini_XCEPTION(input_shape, num_classes, l2_regularization=0.01):
        regularization = l2(l2_regularization)
    
        # base
        img_input = Input(input_shape)
        x = Conv2D(8, (3, 3), strides=(1, 1), kernel_regularizer=regularization,
                                                use_bias=False)(img_input)
        x = BatchNormalization()(x)
        x = Activation('relu')(x)
        x = Conv2D(8, (3, 3), strides=(1, 1), kernel_regularizer=regularization,
                                                use_bias=False)(x)
        x = BatchNormalization()(x)
        x = Activation('relu')(x)
    
        # module 1
        residual = Conv2D(16, (1, 1), strides=(2, 2),
                          padding='same', use_bias=False)(x)
        residual = BatchNormalization()(residual)
    
        x = SeparableConv2D(16, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
        x = Activation('relu')(x)
        x = SeparableConv2D(16, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
    
        x = MaxPooling2D((3, 3), strides=(2, 2), padding='same')(x)
        x = layers.add([x, residual])
    
        # module 2
        residual = Conv2D(32, (1, 1), strides=(2, 2),
                          padding='same', use_bias=False)(x)
        residual = BatchNormalization()(residual)
    
        x = SeparableConv2D(32, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
        x = Activation('relu')(x)
        x = SeparableConv2D(32, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
    
        x = MaxPooling2D((3, 3), strides=(2, 2), padding='same')(x)
        x = layers.add([x, residual])
    
        # module 3
        residual = Conv2D(64, (1, 1), strides=(2, 2),
                          padding='same', use_bias=False)(x)
        residual = BatchNormalization()(residual)
    
        x = SeparableConv2D(64, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
        x = Activation('relu')(x)
        x = SeparableConv2D(64, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
    
        x = MaxPooling2D((3, 3), strides=(2, 2), padding='same')(x)
        x = layers.add([x, residual])
    
        # module 4
        residual = Conv2D(128, (1, 1), strides=(2, 2),
                          padding='same', use_bias=False)(x)
        residual = BatchNormalization()(residual)
    
        x = SeparableConv2D(128, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
        x = Activation('relu')(x)
        x = SeparableConv2D(128, (3, 3), padding='same',
                            kernel_regularizer=regularization,
                            use_bias=False)(x)
        x = BatchNormalization()(x)
    
        x = MaxPooling2D((3, 3), strides=(2, 2), padding='same')(x)
        x = layers.add([x, residual])
    
        x = Conv2D(num_classes, (3, 3),
                #kernel_regularizer=regularization,
                padding='same')(x)
        x = GlobalAveragePooling2D()(x)
        output = Activation('softmax',name='predictions')(x)
    
        model = Model(img_input, output)
        return model
    

    4. 数据增强的批量训练

        神经网络的训练需要大量的数据,数据的量决定了网络模型可以达到的高度,网络模型尽量地逼近这个高度。然而对于人脸表情的数据来说,都只存在少量的数据Extended Cohn-Kanada (CK+)的数据量是远远不够的,并且CK+多是比较夸张的数据。Kaggle Fer2013数据集也不过只有3万多数据量,而且有很多遮挡、角度等外界影响因素。既然收集数据要花费很大的人力物力,那么我们就用技术解决这个问题,为避免重复开发首先还是看看有没有写好的库。博主又通读了遍Keras官方文档,其中ImageDataGenerator的图片生成器就可完成这一目标。

    为了尽量利用我们有限的训练数据,我们将通过一系列随机变换堆数据进行提升,这样我们的模型将看不到任何两张完全相同的图片,这有利于我们抑制过拟合,使得模型的泛化能力更好。在Keras中,这个步骤可以通过keras.preprocessing.image.ImageGenerator来实现,这个类使你可以:在训练过程中,设置要施行的随机变换通过.flow或.flow_from_directory(directory)方法实例化一个针对图像batch的生成器,这些生成器可以被用作keras模型相关方法的输入,如fit_generator,evaluate_generatorpredict_generator。——Keras官方文档

        ImageDataGenerator()是一个图片生成器,同时也可以在batch中对数据进行增强,扩充数据集大小(比如进行旋转,变形,归一化等),增强模型的泛化能力。结合前面的模型和数据训练部分的代码如下:

    """
    Description: 训练人脸表情识别程序
    """
    
    from keras.callbacks import CSVLogger, ModelCheckpoint, EarlyStopping
    from keras.callbacks import ReduceLROnPlateau
    from keras.preprocessing.image import ImageDataGenerator
    from load_and_process import load_fer2013
    from load_and_process import preprocess_input
    from models.cnn import mini_XCEPTION
    from sklearn.model_selection import train_test_split
    
    # 参数
    batch_size = 32
    num_epochs = 10000
    input_shape = (48, 48, 1)
    validation_split = .2
    verbose = 1
    num_classes = 7
    patience = 50
    base_path = 'models/'
    
    # 构建模型
    model = mini_XCEPTION(input_shape, num_classes)
    model.compile(optimizer='adam', # 优化器采用adam
                  loss='categorical_crossentropy', # 多分类的对数损失函数
                  metrics=['accuracy'])
    model.summary()
    
    # 定义回调函数 Callbacks 用于训练过程
    log_file_path = base_path + '_emotion_training.log'
    csv_logger = CSVLogger(log_file_path, append=False)
    early_stop = EarlyStopping('val_loss', patience=patience)
    reduce_lr = ReduceLROnPlateau('val_loss', factor=0.1,
                                  patience=int(patience/4),
                                  verbose=1)
    # 模型位置及命名
    trained_models_path = base_path + '_mini_XCEPTION'
    model_names = trained_models_path + '.{epoch:02d}-{val_acc:.2f}.hdf5'
    
    # 定义模型权重位置、命名等
    model_checkpoint = ModelCheckpoint(model_names,
                                       'val_loss', verbose=1,
                                        save_best_only=True)
    callbacks = [model_checkpoint, csv_logger, early_stop, reduce_lr]
    
    # 载入数据集
    faces, emotions = load_fer2013()
    faces = preprocess_input(faces)
    num_samples, num_classes = emotions.shape
    
    # 划分训练、测试集
    xtrain, xtest,ytrain,ytest = train_test_split(faces, emotions,test_size=0.2,shuffle=True)
    
    # 图片产生器,在批量中对数据进行增强,扩充数据集大小
    data_generator = ImageDataGenerator(
                            featurewise_center=False,
                            featurewise_std_normalization=False,
                            rotation_range=10,
                            width_shift_range=0.1,
                            height_shift_range=0.1,
                            zoom_range=.1,
                            horizontal_flip=True)
    
    # 利用数据增强进行训练
    model.fit_generator(data_generator.flow(xtrain, ytrain, batch_size),
                            steps_per_epoch=len(xtrain) / batch_size,
                            epochs=num_epochs,
                            verbose=1, callbacks=callbacks,
                            validation_data=(xtest,ytest))
    

        以上代码中设置了训练时的结果输出,在训练结束后会将训练的模型保存为hdf5文件到自己指定的文件夹下,由于数据量大模型的训练时间会比较长,建议使用GPU加速。训练结束后测试得到混淆矩阵如下:

    图片展示

        训练的模型综合在FER2013数据集上的分类准确率为66%,后续调整之后达到了70%,算是中等偏上水平,其实并非模型不好而是在数据预处理、超参数的选取上有很大的可提升空间,当然也可使用其他的模型,譬如可参考论文:Extended deep neural network for facial emotion recognition,大家可自行研究,这里就不多介绍了。


    5. 系统UI界面的实现

        上面的模型训练好了,但对于我们来说它的作用就只是知道了其准确率还行,其实深度学习的目的最重要还是应用,是时候用上面的模型做点酷酷的东西了。可不可以用上面的模型识别下自己表达的情绪呢?不如做个系统调取摄像头对实时画面中的表情进行识别并显示识别结果,既能可视化的检测模型的实用性能,同时使得整个项目生动有趣激发自己的创造性,当你向别人介绍你的项目时也显得高大上。这里采用PyQt5进行设计,首先看一下最后的效果图,运行后的界面如下:

    图片展示

        设计功能:一、可选择模型文件后基于该模型进行识别;二、打开摄像头识别实时画面中的人脸表情;三、选择一张人脸图片,对其中的表情进行识别。选择一张图片测试识别效果,如下图所示:

    图片展示

        博主对UI界面的要求是可以简单但颜值必须高,必须高,实用简约高颜值是我奉行的标准,以上的界面几经修改才有了上面的效果。当然博主的目的并不单纯的想秀,而是借此做一个测试模型的系统,可以选择模型、训练测试集等以便界面化地对后面的模型进行各种测试评估,生成用于论文的特定结果数据图或表格等,这个测试系统后面有机会分享给大家。

        系统UI界面的实现这部分又设计PyQt5的许多内容,在这一篇博文中介绍恐怕尾大不掉,效果也不好,所以更多的细节内容将在后面的博文中介绍,敬请期待!有需要的朋友可通过下面的链接下载这部分的文件。


    下载链接
        若您想获得博文中涉及的实现完整全部程序文件(包括数据集,py, UI文件等,如下图),这里已打包上传至博主的面包多下载资源中。文件下载链接如下:
    下载的文件情况
    数据链接:训练用到的数据集(提取码:t7xj

        本资源已上传至面包多网站,可以点击以下链接获取,已将数据集同时打包到里面,点击即可运行,完整文件下载链接如下:

    完整资源下载链接博主在面包多网站上的完整资源下载页

    公众号获取
        本人微信公众号已创建,扫描以下二维码并关注公众号“AI技术研究与分享”,后台回复“ER20190609”获取。

    【运行程序须知】
    在这里插入图片描述
        要安装的库如上图(以上是博主安装的版本),如您想直接运行界面程序,只需在下载链接1中的文件后,运行runMain.py程序。

        如您想重新训练模型,下载链接1中的文件后,运行前请下载链接2中的数据集解压到的csv文件放到 fer2013\fer2013 的文件夹下,运行train_emotion_classifier.py程序即可重新训练。

    详细安装教程人脸表情识别系统介绍——离线环境配置篇


    5. 结束语

        由于博主能力有限,博文中提及的方法与代码即使经过测试,也难免会有疏漏之处。希望您能热心指出其中的错误,以便下次修改时能以一个更完美更严谨的样子,呈现在大家面前。同时如果有更好的实现方法也请您不吝赐教。

        大家的点赞和关注是博主最大的动力,博主所有博文中的代码文件都可分享给您,如果您想要获取博文中的完整代码文件,可通过C币或积分下载,没有C币或积分的朋友可在关注、点赞博文后提供邮箱,我会在第一时间发送给您。博主后面会有更多的分享,敬请关注哦!

    参考文献:
    [1] Chollet F. Xception: Deep learning with depthwise separable convolutions[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2017: 1251-1258.
    [2] Arriaga O, Valdenegro-Toro M, Plöger P. Real-time convolutional neural networks for emotion and gender classification[J]. arXiv preprint arXiv:1710.07557, 2017.
    [3] Jain D K, Shamsolmoali P, Sehdev P. Extended deep neural network for facial emotion recognition[J]. Pattern Recognition Letters, 2019, 120: 69-74.

    展开全文
  • 学习了Python编程语言之后,可以做许多有趣的事情。例如可以使用python设计一个窗口,现在小编将使用tkinter为大家演示创建一个小窗口,设置了2个按钮,一个是btn关闭窗口,另一个是btn用于切换执行传入的2个函数,...

    学习了Python编程语言之后,可以做许多有趣的事情。例如可以使用python设计一个窗口,现在小编将使用tkinter为大家演示创建一个小窗口,设置了2个按钮,一个是btn关闭窗口,另一个是btn用于切换执行传入的2个函数,都是简单的小代码,供大家参考学习。

    56fa23b2b70c2.jpg

    对于刚刚接触地理处理的新用户而言,使用工具对话框是最为常见的执行地理处理操作的方法。当一次必须只执行一个工具时,工具对话框的确是运行操作的好方法。地理处理工具易于使用,而且会在使用不当的参数旁边显示警告图标或错误图标以及相关消息,从而提供即时反馈。然而,还存在更为有效的方法来执行地理处理工具或操作,如通过 Python 脚本。

    Python 窗口是一个完全交互式的 Python 解释程序(或者说界面),允许在 ArcGIS for Desktop 应用程序内执行地理处理工具和 Python 功能。在 ArcGIS 中,该窗口是直接访问 Python 脚本函数的最佳位置。创建更为复杂的独立 Python 脚本或 Python 脚本工具时,可以直接利用在 Python 窗口中学到的技巧。

    要设计的窗口如下:

    56fa275d4450a.png

    Python窗口之所以能成为运行和实验 Python 命令和语法的重要工具要得益于其几大主要特征:

    1、所有 Python 函数都可通过 Python 窗口显示。

    2、 可输入并执行包含多个地理处理工具或地理处理器方法的多行命令。

    3、可重新调用、编辑和重新执行已输入并执行的工具或函数。

    4、可从现有 Python 文件中加载 Python 命令或代码块。

    5、可将 Python 命令或代码块保存至 Python 文件或文本文件中,以便日后重新加载或在不同的环境中使用。

    6、自动完成功能让填写地理处理工具参数的工作较使用工具对话框更方便快捷。

    设计窗口运用的代码如下:

    570782988ed4d.png

    5707829f1b96d.png

    570782a8794b4.png

    上面显示的是将会使用到的代码。

    看完上面的教程,使用tkinte创建一个小窗口其实是不难的,你学会了吗?

    展开全文
  • python实现UI界面化图书管理系统

    千次阅读 多人点赞 2020-12-19 13:03:10
    管理员界面五、总结 前言 提示:本程序是界面化的图书管理系统,有登录、注册功能,登录分为学生登陆和管理员登陆。有查询图书,借阅图书、归还图书、图书分类、添加图书,以及记录我的书架等功能。 本图书管理系统...


    前言

    提示:本程序是界面化的图书管理系统,有登录、注册功能,登录分为学生登陆和管理员登陆。有查询图书,借阅图书、归还图书、图书分类、添加图书,以及记录我的书架等功能。
    本图书管理系统采用的是.csv格式的文件存储的图书信息,无需安装数据库,很适合初学者。使用到了csv等第三方库,运行login.py即可。(连接数据库的版本现已出炉!可点击查看
    因为代码过多,就不粘代码了。如果有想学习程序的小伙伴们,可以加我QQ,我的QQ在下面的图片中。


    话不多说,上图!

    一、程序架构

    在这里插入图片描述

    二、登录注册部分界面

    在这里插入图片描述

    三、学生界面

    在这里插入图片描述
    在这里插入图片描述

    四.管理员界面

    在这里插入图片描述
    在这里插入图片描述

    由于代码有点多,这里不展示代码了。当然功能其实不止这些,这些只是一部分功能,有兴趣的小伙伴可私我qq。

    五、总结

    提示:总之这个系统很适合初学者,可以帮助初学python的同学熟悉python的项目编写以及pycharm的熟练使用,很有助于自己水平的提升.

    展开全文
  • 记录——pythonui界面实现

    千次阅读 2020-08-12 17:49:57
    在写完程序之后想让程序看起来更加可视化一点,所以想看看在上面加个ui界面,记录下发生过的问题以及解决方法。 如果发现文章哪里有问题,欢迎指正。 为什么选择pyside2呢? 在选择库的时候看到了很多对比pyside2和...
  • python tkinter做UI界面

    千次阅读 2019-07-12 16:05:33
    使用Python内置的tkinter写界面 里面的爬虫代码是爬取网易云音乐的电台专栏,代码讲解链接在我上一篇博客:https://blog.csdn.net/congcong7267/article/details/95625653 代码 # -*- coding: utf-8 -*- import ...
  • 在写Python软件的时候,一般用命令行就行了,但是某些特殊情况下(主管要求),需要写一个还能看的界面提供给客户的情况下,那就必须要用到PythonUI包。试用了很多种:因为一直用的Python 2.7版本的,所以前几次...
  • python UI 之使用tkinter库制作界面时实现拖动时零件跟随变化 在用tkinter写界面的时候,想要界面被拖动变大变小的时候,界面里面的零件(按钮、文本一类)也跟着一起变动,该怎么办呢? 可以通过在界面里面添加...
  • 学习了Python编程语言之后,可以做许多有趣的事情。例如可以使用python设计一个窗口,现在小编将使用tkinter为大家演示创建一个小窗口,设置了2个按钮,一个是btn关闭窗口,另一个是btn用于切换执行传入的2个函数,...
  • PythonUI界面开发库Tkinter

    千次阅读 2020-08-17 11:05:11
    目录Tkinter库简介创建第一个窗体几何布局管理器(geometry manager)Tkinter组件python事件处理事件绑定事件处理函数 Tkinter库简介 Tkinter是python的标准GUI库,且是内置在python安装包中的库。 创建第一个窗体 ...
  • python实现简单UI界面

    万次阅读 2018-12-13 22:50:06
    # -*- coding:utf-8 -*- import easygui import easygui as g message = '爱我不?' message1 = '你是智障吧' def uiShow(message): while (1): Yes_or_No = easygui.buttonbox(title=" love "...
  • python ui 获取文件目录

    千次阅读 2016-01-21 09:50:33
    python ui获取文件目录的两种方法
  • 摘要:许多情况下我们需要用到摄像头获取图像,进而处理图像,这篇博文介绍利用pyqt5、OpenCV...为了使用和后续开发方便,这里利用pyqt5设计了个相机界面,后面将介绍如何实现,要点如下: 界面设计 逻辑实现 完整代码
  • PyQt5 图形界面-用Qt Designer来设计UI界面,并转化为python代码运行实例演示。 Qt Designer 是 Qt Creater 程序里的一个功能。 PyQt5是把 Qt Designer 设计的界面转化为python代码的库。 首先打开我们的Qt Creater...
  • 教你用Python界面

    万次阅读 多人点赞 2018-11-18 18:52:54
    作为Pyhon开发者,你迟早都会碰到图形用户界面(GUI)应用开发任务,这时候我们就需要一些界面库来帮助我们快速搭建界面python界面库很多,我认识的并不多,这里只列出几种我认识的 1.tkinter Tkinter(也叫Tk...
  • 本课程主要介绍Python图形用户界面程序设计框架PyQt的程序设计,内容基本包含了利用PyQt进行图形界面程序设计的各个主要方面。内容从PyQt基础知识开始,内容包括:图形界面基础;事件、信号处理;图形绘制、坐标映射...
  • Python+Qt实现360领航版Ui界面,使用Python和Qt实现360领航版界面,没有第三方库,除了Qt库,下载后放在非中文目录可以直接运行程序。
  • 今天小编就为大家分享一篇Python+PyQT5的子线程更新UI界面的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python ui 自动化工具 uiautomation

    千次阅读 2019-08-23 15:47:33
    开始时带着一点点抗拒慢慢地熟悉起来,后来发现python uiautomation 自动化非常有意思,可以做很多你想象不到的事情,特此记录一下。 简介 uiautomation 是在 GitHub 上的一个开源项目项目地址。总体来说,ui...
  • python gui界面

    2017-03-29 13:52:41
    python gui界面之校园学习社区管理系统
  • 本文主要介绍图片转素描风格的Python软件设计,图像处理部分基于OpenCV实现,采用PyQT5进行界面设计,可通过调整界面参数改善图像效果,详细代码将在下篇博文中介绍,所有涉及的完整程序文件(包含py、UI界面、图标...
  • python + pyqt5 视频播放UI界面

    千次阅读 多人点赞 2019-08-10 14:49:39
    最近在做一个人头检测的项目,识别的效果还算可以了,组长说要做一个demo出来,用来展示我们的成果……然后我就用python+qt做了一个超级简陋的界面出来了。 为了避免大家走弯路先跟大家说一下,qt 直接贴图片在...
  • 利用OpenCV实现用电脑上连接的摄像头拍照并保存照片,利用pyqt5设计了个相机界面。资源中包含全部完整文件(UI文件,图片,qrc、py文件),所有代码已调试通过,详细实现过程及代码注释可参考本人博客。
  • python opencv的图像处理有ui界面: 效果图: 效果视频: python opencv图像处理操作有ui界面 项目代码下载: 链接:https://pan.baidu.com/s/1mqa6pAXOnk483M4zJnUu2g 提取码:pprq 复制这段内容后打开...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 51,879
精华内容 20,751
关键字:

pythonui界面

python 订阅