05 2023 档案
摘要:UPDATE student SET pic0 = pic1;
阅读全文
摘要:https://jingyan.baidu.com/article/eb9f7b6d69ab84c79264e872.html 就是新建一个画布然后往里放图片就行
阅读全文
摘要:首先介绍下cv2.boundingRect(img)这个函数 这个函数很简单,img是一个二值图,也就是它的参数; 返回四个值,分别是x,y,w,h;
阅读全文
摘要:import cv2 import numpy as np w1=np.array([[0,1],[1,2],[3,4],[5,6],[7,8],[10,11]]) w=cv2.boundingRect(w1) print(w) (0, 1, 11, 11) 因此返回是左上角的x,y坐标和右下角的x
阅读全文
摘要:汉字好像是一个区间呢 axisX = QCategoryAxis() axisX.append("first",0) axisX.append("0分25秒",25) axisX.append("0分50秒",50) axisX.append("1分15秒",75) axisX.setLabelsC
阅读全文
摘要:import sysfrom PyQt5.QtCore import Qt,QPointFfrom PyQt5.QtGui import (QPainter, QPen, QColor, QFont, QBrush, QLinearGradient, QGradient)from PyQt5.QtW
阅读全文
摘要:pen = QPen(QColor(0x059605)) pen.setWidth(3) lineSeries.setPen(pen) lineSeries.setPointsVisible(True)
阅读全文
摘要:chart.removeAllSeries()去掉chart内的所有折线图,因此你想重新绘制可以采用此方法去除。
阅读全文
摘要:self.label_3.setObjectName("label_3") self.gif = QMovie('icon/11.gif') self.label_3.setMovie(self.gif) self.label_3.setAttribute(False) self.label_3.s
阅读全文
摘要:首先把视频帧导入图层 然后按shift并点击最后一帧。 按ctrl+shift+alt+s
阅读全文
摘要:"QCheckBox::indicator" "{" "background-color : rgb(40, 50, 62);" "}" "QCheckBox::indicator:Checked\n" "{\n" "color: rgb(0, 200, 176);\n" "}\n" 但是没用对号
阅读全文
摘要:img_path='icon/loginuser.png' action = QAction(self.lineEdit) action.setIcon(QtGui.QIcon(img_path)) self.lineEdit.addAction(action,QLineEdit.LeadingPo
阅读全文
摘要:ui.pushButton_2.clicked.connect(lambda:wenjian(xiaoxi_window)) def wenjian(win): from PyQt5.QtWidgets import QFileDialog files, filetype = QFileDialog
阅读全文
摘要:if __name__ == '__main__': app = QApplication(sys.argv) MainWindow = QMainWindow() ui = Ui_Form() ui.setupUi(MainWindow) MainWindow.show() stu_main=QM
阅读全文
摘要:tableWidge中插入控件并居中 label1234 = QtWidgets.QLabel() pixmap = QtGui.QPixmap("0.jpg") pixmap = pixmap.scaled( QtCore.QSize(100, 100), QtCore.Qt.KeepAspect
阅读全文
摘要:"QMainWindow{\n" "border-image:url(end.png);\n" "}\n" background-image: 背景图,默认原图大小,窗口空余部分填充此背景图 border-image: 默认跟随窗口大小进行拉伸 image: 默认原图大小,窗口空余部分不补充
阅读全文
摘要:axis=QValueAxis()#创建坐标轴 axis.setRange(0, 75)#比较重要,没有这个不会出坐标轴,诙谐数值 #axis.setLabelFormat("%d") axis.setTickCount(4)#对应竖线 axis.setGridLineVisible(False)#
阅读全文
摘要:axisx.setGridLineVisible(True)
阅读全文
摘要:chartView = QChartView(chart,Form) chartView.setRenderHint(QPainter.Antialiasing) chartView.setGeometry(QtCore.QRect(400, 400, 771, 701))左上角的x,y值和宽高
阅读全文
摘要:在按钮的样式表里输入以下代码 QPushButton{color: rgb(102, 131, 156); background-color: rgb(37, 43, 51); border-radius:10px; } QPushButton:hover{ background-color: rg
阅读全文
摘要:import sys from PyQt5.QtWidgets import QApplication, QMainWindow if __name__ == '__main__': app = QApplication(sys.argv) MainWindow = QMainWindow() ui
阅读全文
摘要:import cv2 def video_duration_3(filename): cap = cv2.VideoCapture(filename) if cap.isOpened(): rate = cap.get(5) frame_num = cap.get(7) duration = fra
阅读全文
摘要:https://www.onlinedown.net/article/10007858.htm
阅读全文
摘要:https://blog.csdn.net/m0_46204224/article/details/123585551
阅读全文
摘要:import tkinter from tkinter import ttk from tkinter import * from tkinter.ttk import * import pymysql # 导入消息对话框子模块 import tkinter.messagebox def fixed
阅读全文
摘要:在pyqt中创建Qt 设计形式 https://blog.csdn.net/Alvwith/article/details/124163574 选择widget,然后设计界面转为py文件。 就会得到一个设计好的窗体类。 # -*- coding: utf-8 -*- # Form implement
阅读全文
摘要:为了把毕设界面做的好看些,因此我去了墨刀这一界面设计网站进行界面设计,学习如何做一个好界面。 https://modao.cc/community/mtlbzxaak2qmklfz?title=%E5%85%AC%E4%BA%A4%E4%BA%91%E5%AE%89%E5%85%A8%E4%B8%B
阅读全文
摘要:想通过字典存储最后一帧的关键点,去判断相似度过低则不匹配。
阅读全文
摘要:在解决人体跟踪算法时,属于工程问题,为了解决遮挡问题我反复读取csv文件,但是导致程序运行过慢,为了解决此问题我就采用了多线程方法略微改变了速度。 多线程并不是提速的关键问题,为了提速应该减少csv文件的读取。 分析结束跟踪时间 267.42538046836853(单线程)分析结束跟踪时间 258
阅读全文
摘要:https://blog.csdn.net/yxn4065/article/details/128533823
阅读全文
摘要:代码只进行了18次循环处理俩个人18个关键点的距离。单进程耗时0.001秒,多进程耗时6.34秒。 import cv2 import numpy as np from modules.keypoints import BODY_PARTS_KPT_IDS, BODY_PARTS_PAF_IDS f
阅读全文
摘要:时间single 0.09075808525085449 multi 4.713615894317627。因此计算量不是特别大不建议使用多进程。 import threading import time ind=100 def single(): for j in range(ind): for i
阅读全文
摘要:一般不要使用多进程,除非计算量很大要不然速度还没有单进程执行的快。
阅读全文
摘要:新建和终止线程这俩步分别需要分配和释放资源。 线程池里的线程重复使用,直接接收任务队列,挨个取出任务并执行。如果任务队列为空线程池并不销毁线程。 u rls是参数列表,craw是函数名。result是返回结果。
阅读全文
摘要:新建和终止线程这俩步分别需要分配和释放资源。 线程池里的线程重复使用,直接接收任务队列,挨个取出任务并执行。如果任务队列为空线程池并不销毁线程。 u rls是参数列表,craw是函数名。result是返回结果。
阅读全文
摘要:result存储的是线程的返回结果,因此可以用线程池获取返回。 最终时间比 single 3.388930559158325 multi 2.5222535133361816 import threading import time ind=3 def single(): for j in rang
阅读全文
摘要:import threading import time ind=3 def single(): for j in range(ind): for i in range(5000): w=2*i #print(w) def s(): for i in range(5000): w=2*i #prin
阅读全文
摘要:只需要再引发安全问题的部分加lock就行。加锁的话其他进程不能访问的。
阅读全文
摘要:只有在I/O时thread才释放GIL让thread2运行同时thread1在进行I/O只有进行输入和输出操作thraeding才行。I/O跟cpu分开的所以进行I/O时进程会释放交给另一个进程运行。 如果没有I/O的话多线程就是串行执行。线程不断的切换导致性能较低。
阅读全文
摘要:已经对多线程并发有了一个基本的理解。现在要将多线程用于毕设中,多线程的作用是将循环用作并发处理,有一定的速度提速作用。目前需要了解毕设程序在哪方面需要进行多线程修改。python的multiprocessing库去利用多核的机器,threading运行时会释放GIL锁,可以让I/O并行。
阅读全文
摘要:线程过多了,不会比单线程快多少。因为程序可能花时间在线程的转换上了。threading模块没有返回值。 import threading import time ind=4 dan_sum=0 multi_sum=0 def single(): for j in range(ind): for i
阅读全文
摘要:import threading import time ind=2 def single(): for j in range(ind): for i in range(5000): print(i*2) def s(): for i in range(5000): print(i*2) def m
阅读全文
摘要:t.start去启动线程 如果想知道什么时候结束用join函数。
阅读全文
摘要:电脑是单cpu8核的。 多核CPU和多CPU的区别主要在于性能和成本。多核CPU性能最好,但成本最高;多CPU成本小,便宜,但性能相对较差。因为笔者目前主要是要把多线程编程做出来,因此先留下这一坑,日后填。
阅读全文
摘要:现已实现距离过大不比较。(为了提高速度,距离过大的不进行比较,如果距离过近达到一个阈值也停止比较,因为较近可能这俩个实例)。减少读取csv次数。(实现,利用mask存储当前帧的所有人的序号,读取csv文件时不读取该人序号)。多进程。(实现,但是速度提升较小)。 分析结束跟踪时间 267.425380
阅读全文
摘要:这里面存储当前帧的所有人的id号,所以当进行遮挡匹配人体姿态时,为了防止读取所有帧所有人的csv文件,利用mask判断,如果csv代表人的id号在mask中则不进行读取。
阅读全文
摘要:我感觉开源代码应该挑主要和重要的去理解。
阅读全文
摘要:起初我以为是关键点识别不全的问题,导致跟踪失败。其实是因为人体有些动作难以识别导致出现断帧问题,使用防遮挡的人体跟踪算法就可以解决此问题。
阅读全文