Pyqt搭建YOLOV3目标检测界面(超详细+源代码)
本项目github地址:https://github.com/chenanga/qt5_yolov3大家觉得有用的话,帮忙点点star,感谢大家!
2022.5.25更新大家有问题的话尽量在评论区问,问之前可以看一下评论区有没有类似错误的解决方法。
2021.11.23 更新
由于yolov3模型较大、且检测速度也相对会慢一点。大家如果想搭建界面,推荐大家使用yolov5。下面的代码算是一个思想或者一种搭建目标检测的方法,其他网络也大同小异,包括mmdetection等,也差不多。如果想直接用现成yolov5的检测界面,可以参考这篇文章,Pyqt搭建YOLOV5目标检测界面
2021.11.22 更新
下面的代码片段大家可以参考着实现,如果直接拖拽到最新版的yolov3文件夹中运行可能会出错,应该我当时那个代码片段写的比较早,后续yolov3更新了,有些函数名有变动,所以直接运行会出错。我这里有当时和这个代码片段对应的yolov3的代码,但是不太知道这是哪个版本的yolov3。所以有需要的朋友直接在公众号:万能的小陈 后台回复 qtv3,获取整个文件夹以及模型,配置环境后可以直接 ...
C++ string 字符串拼接遇到的问题
最初尝试//目的: 把字符串student_ 和A拼接起来string nameseed = "ABCDE";string name;name="student_" +nameseed[0];cout<<"拼接后的字符串:"<<name<<endl;
输出:拼接后的字符串:ange
再次尝试方法1
string nameseed = "ABCDE";string name;name = std::string("student_")+ nameseed[0];cout<<"拼接后的字符串:"<<name<<endl;
输出:拼接后的字符串:student_A
方法2
string nameseed = "ABCDE";string name;name = "student_";name += nameseed[0];cout << ...
C++随机数 (rand,srand用法)
随机数srand((unsigned int)time(NULL));// 如果没有此行,每次随机数都是一样的。int random = rand() % 61 + 40;//40~100
srand(unsigned int seed)用来设置rand()产生随机数时的随机数种子。参数seed必须是个整数,如果每次seed都设相同值,rand()所产生的随机数值每次就会一样。
采用当前时钟作为随机数种子,利用srand((unsigned int)(time(NULL))的方法,产生不同的随机数种子,因为每一次运行程序的时间是不同的
rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。rand%100 ,代表在0~99中产生随机数
C++初学笔记(3)-----结构体
@TOC
结构体结构体属于用户==自定义的数据类型==,允许用户存储不同的数据类型
2.结构体数组语法 :
struct 结构体名 数组名[元素个数] = { {} , {} , … {} }
代码示例如下:
//结构体定义struct student{ //成员列表 string name; //姓名 int age; //年龄 int score; //分数}int main() { //结构体数组 struct student arr[3]= { {"张三",18,80 }, {"李四",19,60 }, {"王五",20,70 } }; for (int i = 0; i < 3; i++) { cout << "姓名:" << arr[i].nam ...
C++初学笔记(2)
1.数组和变量名规则相同2.数组下标从0开始3.函数的分文件编写除此之外,要在.cpp文件中include .h文件。在.h文件中#includeusing namespace std;
4.指针指针定义的语法:数据类型 *指针变量名;让指针记录变量a的地址
指针前面加*代表解引用,找到指针指向的内存中的数据指针也是一种数据类型,里面存放的是地址 ,在32位操作系统下占用4个字节空间,在64位操作系统下占用8个字节空间,
C++初学笔记(1)
@TOC
#常量C++定义常量的两种方式:
#define 常量名 常量值 #define day 7
const修饰的变量 const 数据类型 常量名 =常量值通常在文件上面定义,表示一个常量
sizeof(数据类型/变量);
float a=3.144444f;避免计算机二次转换do while 先执行循环语句,在判断条件。while先判断,在执行。
a – 97A – 65
goto FLAG; //FLAG一般为大写xxxxFLAG:
Hello World
4630436162ade97ba2718b7d0c4b3b63f97fe7f487088031e1ec7f30c37889e17af4f6297068ec459b8609dd5e773f884c55009995b4e2fa14cd0ad5eff0ada9f9fb8fb348a39322f64a27b4e67198e9d0918355853825b4a8b859e1b0997d0838db13d93eb663a75abf26151a4cd6693bc3399e41eef6d4a0d8ac518bee9c9ddee4d733ecfde4f1c7c01610b2139c3f919d321e3580e4ea4d25333a1eb6a757138158c91746eb650d2bd292b639e6c34cbf144f87d98390fac9f8662146f06c3a6438c2b9ee94e1d311e783b3870047c72629be8369de61aafcfd95d1a6b146908a00176e823191858046b0d3068b0efa543f002c4411ac1 ...