自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 收藏
  • 关注

原创 近期 参考 好文

从多层感知器到卷积网络(一)

2022-04-08 16:10:34 251

原创 Pytorch,矩阵求和维度变化解析

二维可以想象成一张纸,三维可以想象成多张纸叠在一块四维可以想成多沓纸求和时,如果没设定keepdim=True,则会消去相加的那一维度,否则则将维度变为1。

2023-10-18 10:51:45 653

原创 自动求导,计算图示意图及pytorch实现

【代码】自动求导,计算图示意图及pytorch实现。

2023-10-09 17:50:48 535

原创 python concurrent库多线程示例

通过concurrent.futures 创建线程,可以放入到和中,方便获取线程运行完成之后的结果。

2023-04-25 15:32:22 241 1

原创 python copy函数理解和深度复制详解

列表 a 包含一个嵌套的列表 [3, 4]。结果,只有深度复制 c 中的列表 a 保持不变,而 b 和原始列表 a 的嵌套列表都被修改了。这是因为浅层复制只复制原始列表和嵌套列表的引用,而不是递归地复制嵌套列表的内容。而深度复制会递归地复制所有嵌套对象,从而创建全新的副本,因此对原始列表和副本的更改不会相互影响。当一个列表包含其他对象(例如另一个列表、字典、集合等)时,称其为嵌套列表或多维列表。在这种情况下,如果使用 b.copy() 或 b[:] 复制列表 b,则复制的是原始列表及其嵌套的对象的副本。

2023-04-13 16:33:09 455

原创 ubuntu1804创建git服务器并上传代码到服务器

1.安装git3.在git用户目录中创建一个新的git仓库这是创建一个新的git仓库,仓库位于下将your-server替换为您的Ubuntu服务器的IP地址或主机名。这将添加Git用户的公钥到该用户的authorized_keys文件中,从而允许该用户访问该服务器。5.在本地电脑上即可clone仓库。

2023-04-03 18:19:50 676

原创 pytorch 实现简单的卷积神经网络并训练

定义数据import numpy as np # 定义特征和目标 X = np.array([[0, 0], [0, 1], [1, 0], [1, 1]]) # 4 x 2 的矩阵,每一行表示一个数据点 y = np.array([[0], [1], [1], [0]]) # 4 x 1 的矩阵,每一行表示一个目标定义模型# 定义模型class MyNet(torch.nn.Module): def __init__(self): super

2023-03-21 17:59:10 319

原创 python3 + Flask实现一个接口显示接收到的消息并返回response

python3实现简单示例,具体开发需结合项目需求。

2023-03-20 16:06:21 438

原创 yolov5 FOCUS模块作用

yolov5 focus 模块作用

2022-08-18 09:17:15 2244

原创 Pycharm 相对路径失效解决

解决pycharm 相对路径无法使用问题

2022-08-10 14:29:07 3236 2

原创 装机指南1.0

装机指南

2022-08-01 17:02:26 176

原创 python socket库实现接口的监听,信息提取并返回

python socket库实现接口的监听,信息提取并返回

2022-06-01 14:57:49 2722

原创 ffmpeg 裁剪视频 / 批量

使用ffmpeg 裁剪任意视频并输出ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:00 -c copy output.mp4

2022-05-12 14:16:41 3640 1

原创 图像增强代码

import skimageimport io,osimport matplotlib.pyplot as pltfrom PIL import Image,ImageEnhanceimport cv2import numpy as npimport random#root_path为图像根目录,img_name为图像名字def move(root_path,img_name,off): #平移,平移尺度为off img = Image.open(os.path.join(roo

2022-04-21 14:22:08 589

原创 HEIC格式 图像 转换为jpg

今天用手机拍照做了个小数据集,导出发现是heic格式图像,网上有在线的图像转换,不过需要一张一张转换,且限制次数,因此用python实现这个,csdn某些人这垃圾代码还要订阅收费,真是贻笑大方,import whatimageimport pyheiffrom PIL import Imageimport osdef decodeImage(bytesIo, index): bytesIo = 'heic/' + bytesIo with open(bytesIo, 'rb')

2022-04-19 16:08:42 476

原创 leetcode 第4题-寻找两个正序数组中位数

c++:因为数组有序,则无需排序,维护两个指针,依次移动,时间复杂度O(m + n),同一个程序,有时候显示16ms,有时候44ms,离谱class Solution {public: double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) { // 因为数组有序,则无需排序,维护两个指针,依次移动,时间复杂度O(m + n) int p

2022-04-13 17:21:46 1493

原创 leetcode 第三题-无重复字符的最长子串 ps:bug:ERROR: AddressSanitizer: heap-use-after-free on address

c++ 使用hashmap+ 滑动窗口踩坑:map的存储不是按照插入的顺序来进行存储的,而是经过排序的,因此不能使用hashmap.erase(hashmap.begin(),iter)来进行范围删除时间复杂度为O( n2n^{2}n2)class Solution {public: int lengthOfLongestSubstring(string s) { map<char, int> hashmap; map<char, int&gt

2022-04-08 16:29:54 827

原创 leetcode第二题 -两数相加

c++ 维护一个进位变量,速度还可以链表的东西,有点忘了class Solution {public: ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) { ListNode *ans = new ListNode(-1); ListNode *cursor = ans; int t = 0; while (l1 != nullptr || l2 != nullptr ||

2022-04-07 15:42:16 763

原创 Leetcode 第一题-两数之和

评论比较有意思,刷题什么的飒飒shui有人相爱,有人夜里开车看海,有人leetcode第一题都做不出来。每当我别的题不会时,我就回来刷第一题。尝试用c++和py解c++ 暴力解法class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { int nums_size = nums.size(); for(int i = 0;i <

2022-04-07 15:38:37 1274

原创 TensorRT 序列化yolov5 模型

1. 从github上git下序列化程序2. 修改gen_wts.py 文件,best.pt是要训练好的yolov5模型,wts是要生成的权重文件。3.修改yololayer.h文件,只需要修改类数即可. cd build cmake .. make -j6 sudo ./yolov5 -s yolov5s.wts yolov5s.engine s最后一个s 表示训练的模型是smlx,注意: yolov5版本要与tensorrt版本一致...

2022-03-18 09:55:54 1970

原创 ubuntu任务栏图标重复问题,如clion,pycharm

使用ubuntu,打开clion后图标重复!强迫症,解决办法-以clion为例:1.首先打开clion,打开一个控制台,输入 xprop |grep WM_CLASS,随后图标变为 ‘+’形状,随后点击clion窗口,控制台会输出一行命令:2. 把clion关闭,打开 /usr/share/applications 路径,编辑clion文件,在最后加入StartupWMClass=jetbrains-clion即可! 强迫症福音。 效果如下...

2022-03-03 16:44:33 1168

原创 PYTHON OPENCV 获取轮廓精确坐标

效果图和解释看我 c++版本import cv2import numpy as npimport mathimport osdef show(name, img): # 显示图片 cv2.namedWindow(str(name), cv2.WINDOW_NORMAL) cv2.resizeWindow(str(name), 800, 2000) # 改变窗口大小 cv2.imshow(str(name), img)def dis(cx, cy, tx,

2022-02-25 17:04:17 11633

原创 C++ opencv获取精确轮廓坐标

垃圾代码,看看就行嘻嘻,注释部分钧可以运行,大概是画二值化,灰度化,所有轮廓的图像,画的图像太多了我就注视了,算精确坐标的部分就一个for循环,别的方法别忘了告诉我,感谢!效果图放下边了,打了亿点点码#include <iostream>#include "opencv2/opencv.hpp"void show(std::string img_name, cv::Mat img) { cv::namedWindow(img_name, cv::WINDOW_NORMAL);

2022-02-25 17:01:09 8061

原创 yolov5只检测单一类别或者特定的类

在detect.py中170行 if save_img or save_crop or view_img: # Add bbox to image c = int(cls) # integer class # FIXME: if names[int(cls)] == "name_sign":

2022-02-24 08:59:05 7735 7

原创 CUDNN安装及版本选择

CUDNN下载地址选择箭头所指版本进行下载并解压。解压完成后,打开终端cd cudnn-10.2-linux-x64-v8.1.1.33/cuda/ sudo cp include/cudnn.h /usr/local/cuda-10.2/include/ sudo cp lib64/libcudnn* /usr/local/cuda-10.2/lib64/ sudo cp include/cudnn_version.h /usr/local/cuda-10.2/include/ sudo

2021-11-23 14:22:36 4518

原创 cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2没反应解决办法

安装完cudnn后,使用以下命令查看cudnn版本没有反应cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2原因为NVIDIA把版本信息换到cudnn_version.h中了,因此使用以下命令查看cudnn版本信息。cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2若以上命令无反应。则进入到解压的cudnn文件夹中,复制cudnn_version

2021-11-23 14:13:50 2120 1

原创 python深度学习环境创建

1.conda创建虚拟环境conda create -n phot37 python=3.7phot37是环境名2. 安装opencv-python选择的版本是4.2.0,从网上查opencv有哪些版本,选择4.2.0.34,选择豆瓣源,豆瓣源还是挺快的pip install opencv-python -i https://pypi.douban.com/simple3.安装pytorch去pytorch官网选择对应CUDA版本的pytorch,安装即可,需要换源,从官网安装太慢了.4

2021-11-16 14:46:20 1154

原创 cv2.waitkey()

一个一秒30帧的视频,想要逐帧检测,需要在waitkey(33)while true: cv2.imshow("11",im0) cv2.waitkey(33)#33毫秒1/33 = 33ms

2021-11-12 14:16:14 824

原创 MTCNN论文翻译 人脸检测

Joint Face Detection and Alignment usingMulti-task Cascaded Convolutional Networks多任务级联卷积网络进行人脸检测与对齐Abstract—Face detection and alignment in unconstrained en-vironment are challenging due to various poses, illuminations and occlusions. Recent studies sh

2021-10-22 17:38:39 940

原创 ffmpeg 抽帧

ffmpeg -i 2.MOV -vf "select=eq(pict_type\,I)" -vsync vfr -qscale:v 2 -f image2 ./%03d.jpg

2021-10-13 14:56:43 637

原创 Dijkstra算法-求最短路径

输入6 81 3 101 5 301 6 1002 3 53 4 504 6 105 6 605 4 20输出代码#include <cstring>#include "iostream"#include "vector"using namespace std;//Dijkstra//使用邻接矩阵来存储图//记录起点到每个顶点的最短路径的信息struct Dis{ string path; int value; bool v.

2021-09-26 15:06:36 344

原创 oj_01_简单计算器

题目:读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值。Input测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔。没有非法表达式。当一行中只有0时输入结束,相应的结果不要输出。Output对每个测试用例输出1行,即该表达式的值,精确到小数点后2位。Sample Input1 + 24 + 2 * 5 - 7 / 110Sample Output3.0013.36**代码#include &lt

2021-09-23 14:46:54 280

原创 oj_02_Basic Data Struct(hdu 5929)

题目Mr. Frog learned a basic data structure recently, which is called stack.There are some basic operations of stack:∙ PUSH x: put x on the top of the stack, x must be 0 or 1.∙ POP: throw the element which is on the top of the stack.Since it is too simpl

2021-09-23 14:43:51 103

原创 oj_03_pots题解(BFS应用)

题目:You are given two pots, having the volume of A and B liters respectively. The following operations can be performed:FILL(i) fill the pot i (1 ≤ i ≤ 2) from the tap;DROP(i) empty the pot i to the drain;POUR(i,j) pour from pot i to pot

2021-09-23 14:28:58 330

原创 python 读取config文件,configparser模块

test.cfg 文件如下import cv2import numpy as npimport configparserdef get_config_from_cfg(folder_path): cp = configparser.ConfigParser() cp.read(folder_path) secs = cp.sections() print("secs:%s"%secs) print("secs[0] %s\n"%secs[0])

2021-09-13 09:48:37 377

原创 opencv4.1中文官方文档

我用阿里云盘分享了「opencv 4.1中文官方文档v1.1版.pdf」,你可以不限速下载????复制这段内容打开「阿里云盘」App 即可获取链接:https://www.aliyundrive.com/s/39c7QagGjSN

2021-09-08 16:41:25 1803

原创 数据结构 绪论

结构体:typedef struct{ int a; char b; float c;}TypeA;创建一个新的数据类型,即TypeA型。指针 Typea *a= nullptr; Typea b; a=&b; cout<<(*a).a<<"\n";//输出内容 cout<<(&a)<<"\n";//输出地址节点定义typedef struct Node{ int data;//这里默认

2021-08-30 16:56:11 240

原创 ubuntu 上传服务器文件提示:Permission denied

ubuntu 使用ssh连接服务进行模型训练时,上传数据集,提示我Permission denied;首先 更改要上传的文件夹权限,777表示所有人都可以修改,读写等操作sudo chmod 777 yolov5_original_code/随后上传sudo scp -r original_yolov5.zip xxxx@192.168.xx.xxx:/home/xxxx/Documents/yolov5_original_code上传完毕后,为了安全起见,再修改文件夹权限为750,即只有

2021-08-24 15:57:22 2106

原创 c++中获取数组的长度

c++中没有定义该函数,但可以使用sizeof()函数int a[20];cout<<sizeof(a)/sizeof(a[0]);

2021-08-20 14:56:27 135

原创 FLIR Thermal Starter 数据集详解 json详解

该数据集提供了带注释的热成像数据集和对应的无注释RGB图像,用于训练和验证神经网络。数据集总共包含14452张红外图像,其中10228张来自多个短视频;4224张来自一个长为144s的视频。所有视频都来自街道和高速路。大多数图片的采样率为1秒两帧,其中视频的帧率为1秒30帧;少数环境中目标较少时,采样率为1秒1帧。train文件夹文件名注释Annotated_thermal_8_bit带标注框的红外图像RGB不带标注框RGB图像thermal_8_bit不带标注框

2021-08-16 14:53:12 944

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除