- 博客(115)
- 资源 (46)
- 收藏
- 关注
原创 基于PaddleDetection目标检测labelme标注自动获取
在百度的PaddleDetection项目的基础上实现目标检测labelme标注的自动获取,需要先训练一个模型,然后通过这个模型去标注,最后用labelme进行微调
2022-06-20 18:35:58
1252
原创 cmake示例
project(qrcode)cmake_minimum_required(VERSION 3.15)set(CMAKE_SYSTEM_NAME Linux)set(CMAKE_SYSTEM_PROCESSOR aarch64)set(CMAKE_C_COMPILER "aarch64-linux-gnu-gcc")set(CMAKE_CXX_COMPILER "aarch64-linux-gnu-g++")set(CMAKE_FIND_ROOT_PATH "aarch64-linux-gnu
2022-04-07 09:07:24
539
原创 yolov3 build_targets函数
def build_targets(p, targets, model): # p的shape(YoloLayer_num, batch_size, anchor_num, grid_y, grid_x, xywh+obj_confidence+cls_num) # targets的shape为(num_groundtruth, 6), 其中数字6代表img_index+cls_index+xywh # model为整个yolo的model,以获取当前model对应YoloLayer
2021-11-27 14:04:23
2549
1
原创 江大白共学计划_Pytorch推理及范式_Lesson5
1.课程学习本节课主要对于大白AI课程:https://mp.weixin.qq.com/s/STbdSoI7xLeHrNyLlw9GOg《Pytorch推理及范式》课程中的第五节课进行学习。2.作业题目必做题:(1) 自己找 2 张其他图,用 Yolox_s 进行目标检测,并注明输入尺寸和两个阈值。两张图片的输入尺寸都是640*640,两个阈值分别是: conf_threshold = 0.6 nms_threshold = 0.45思考题:(1) Yolox_s:用 time 模块和
2021-10-25 18:31:59
291
原创 一种把项目封装为DLL的方法
通过代理模式封装动态链接库:需要导出的类template class std::shared_ptr< ExpressSheetClass::Impl>;class ExpressSheetClass::Impl{public: Impl() {}; ~Impl() {}; void init(); cv::Mat getUprightImg(cv::Mat& image);private: std::string config_path = "config_
2021-10-23 10:34:17
1097
原创 江大白共学计划_Pytorch推理及范式_Lesson4
1.课程学习本节课主要对于大白AI课程:https://mp.weixin.qq.com/s/STbdSoI7xLeHrNyLlw9GOg《Pytorch推理及范式》课程中的第四节课进行学习。2.作业题目必做题:(1) 对 “./images/car.jpg” 做语义分割,提取出里面的车辆,模仿上课时,对“可视化推理结果”和“BGRA 四通道图”进行保存。可视化推理结果:“BGRA"四通道图像:(2) 自己找 2 张其他图,对图中某个类别进行分割,并保存“BGRA 四通道图”。图1:i
2021-10-22 17:20:10
262
原创 江大白共学计划_Pytorch推理及范式_Lesson3
文章目录1.课程学习2.作业题目必做题:思考题:3 课程总结:1.课程学习本节课主要对于大白AI课程:https://mp.weixin.qq.com/s/STbdSoI7xLeHrNyLlw9GOg《Pytorch推理及范式》课程中的第二节课进行学习。2.作业题目必做题:(1) 把模型改为resnet18,加载相应的模型权重(Lesson2的物料包中有),跑一下0.jpg和1.jpg,看一下输出结果。结果:(2) 自己找2张其他图,用resnet18做下推理。图片:结果:
2021-10-19 14:19:38
314
1
原创 江大白共学计划_Pytorch推理及范式_Lesson2
江大白共学计划_Pytorch推理及范式_Lesson2 课程作业必做题:(1) 从torchvision中加载resnet18模型结构,并载入预训练好的模型权重 ‘resnet18-5c106cde.pth’ (在物料包的weights文件夹中)。import torchimport torchvision.models as model# 从torchvision加载res18模型结构model = model.resnet18()# 加载权重pretrained_state
2021-10-15 19:53:23
313
原创 python多线程处理图像
在做深度学习的时候,经常要处理各种数据,多线程可以加速处理图像import osfrom PIL import Imageimport numpy as npimport threadpoolnames = os.listdir("./STDC/before/")images = [img for img in names if img[-3] == "j"]def ThreadFun_c1(images): # 读取原文件夹 if images.endswith("
2021-09-10 19:32:35
2660
原创 百度PaddleOCR C++编译(Windows)
百度PaddleOCR C++编译(Windows)一、前置条件:(1)OpenCV3.4.6+(2)下载Cmake 3.0+(3)Visual Studio 2019(4)分别下载PaddleOCR项目(https://github.com/PaddlePaddle/PaddleOCR)、PaddleOCR模型(https://github.com/PaddlePaddle/PaddleOCR)、PaddleOCR预测库(https://paddleinference.paddlepaddle.
2021-08-10 10:47:40
2590
原创 Visual Studio 2017运行main函数带参数的C++程序
第一种方式通过cmd窗口运行,把运行目录改到项目文件中Debug目录下,输入程序的.exe文件和程序所需的参数。第二种方式打开项目属性页面,点击调试,在命令参数中输入所需参数即可,不过这种方式需要在这个地方改来改去,比较麻烦。...
2021-05-10 21:20:28
1574
原创 python中实例方法、类方法、静态方法
class Dog: dogbook = {'黄色':30, '黑色':20, '白色':0} def __init__(self, name, color, weight): self.name = name self.color = color self.weight = weight # 实例方法: 定义时,必须把self作为第一个参数,可以访问实例变量,只能通过实例名访问 def bark(self):
2021-02-03 15:58:59
172
原创 TensorFlow模块:tf.image
模块:tf.image定义在:tensorflow/tools/api/generator/api/image/init.py用于Python API的导入.类class ResizeMethod函数adjust_brightness(…):调整RGB或灰度图像的亮度.adjust_contrast(…):调整RGB或灰度图像的对比度.adjust_gamma(…):对输入图像执行Gamma校正.adjust_hue(…):调整RGB图像的色调.adjust_saturation(…):
2020-12-26 19:06:52
640
2
原创 AttributeError: module ‘tensorflow‘ has no attribute ‘compat‘
tensorfolw的版本和tensorflow-estimator的版本不一致,重新安装和tensorflow版本一直的tensorflow-estimator
2020-12-26 17:02:56
389
原创 中值滤波
#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;Mat medianSmooth(const Mat& I, Size size, int borderType = BORDER_DEFAULT) { CV_Assert(I.type() == CV_8UC1); int H = size.height; int W = size.wi
2020-10-28 11:00:53
275
原创 面经
1.问项目2.c++问题:new和malloc区别;子类如何析构;深拷贝和浅拷贝;3.深度学习:NMS如何实现;yolo;MobileNet结构;池化反向传播
2020-10-11 09:50:04
307
原创 Python 装饰器
计算一下输出从2到10000中的质数所需要的的时间,代码如下:import timedef is_prime(num): if num < 2: return False if num == 2: return True if num > 2: for i in range(2, num): if num % i == 0: return False
2020-09-16 00:08:27
157
原创 dlib Library
Python:http://dlib.net/train_shape_predictor.py.htmlC++:http://dlib.net/http://dlib.net/face_landmark_detection_ex.cpp.html
2020-09-09 16:43:35
189
原创 TF2.0图像分类实战(六)ResNet
ResNetResNet(Residual Neural Network)由微软研究院的Kaiming He等4名华人提出,通过使用Residual Unit成功训练152层深的神经网络,在ILSVRC 2015比赛中获得了冠军,取得3.57%的top-5错误率,同时参数量却比VGGNet低,效果非常突出。ResNet的结构可以极快地加速超深神经网络的训练,模型的准确率也有非常大的提升。ResNet最初的灵感出自这个问题:在不断加神经网络的深度时,会出现一个Degradation的问题,即准确率会先上
2020-09-01 14:05:31
805
原创 TF2.0图像分类实战(四)VGGNet
VGGNet创新点VGGNet是牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司的研究员一起研发的的深度卷积神经网络。VGGNet探索了卷积神经网络的深度与其性能之间的关系,通过反复堆叠33的小型卷积核和22的最大池化层,VGGNet成功地构筑了16~19层深的卷积神经网络。VGGNet相比之前state-of-the-art的网络结构,错误率大幅下降,并取得了ILSVRC 2014比赛分类项目的第2名和定位项目的第1名。VGGNet论文中全部使用了
2020-08-26 22:13:20
822
原创 TF2.0图像分类实战(三)AlexNet
AlexNet技术特点概要AlexNet是现代深度CNN的奠基之作。2012年,Hinton的学生Alex Krizhevsky提出了深度卷积神经网络模型AlexNet,它可以算是LeNet的一种更深更宽的版本。AlexNet中包含了几个比较新的技术点,也首次在CNN中成功应用了ReLU、Dropout和LRN等Trick。同时AlexNet也使用了GPU进行运算加速,作者开源了他们在GPU上训练卷积神经网络的CUDA代码。AlexNet包含了6亿3000万个连接,6000万个参数和65万个神经元,拥
2020-08-26 22:08:51
723
1
原创 if cv2.waitKey(25) & 0xFF == ord(‘q‘): break的解释
首先,cv2.waitKey(1) & 0xFF将被执行。等待用户按1ms。如果用户按,例如,q,那么q的waitKeyreturnDECIMAL VALUE是113。在二进制中,它表示为0b01110001。接下来,执行AND运算符,两个输入分别是0b01110001和0xFF(0b111111111)。0b01110001AND0b11111111=0b01110001。确切的结果是DECIMAL VALUE的q其次,将左表达式0b01110001的值与ord(‘q’)进行比较。显然,这些值与
2020-08-25 17:23:31
3239
2
原创 TF2.0图像分类实战(二)加载自己的数据集
采用猴子数据集:一共10个类代码如下import tensorflow as tfimport pathlibimport randompath = './monkey/training/training'data_path = pathlib.Path(path)all_images_path = list(data_path.glob('*/*'))all_images_path = [str(path) for path in all_images_path] # 所有图片路径名
2020-08-19 00:20:44
785
原创 TF2.0图像分类实战(一)Lenet
关于Lenet的理论方面,请参考:https://cuijiahua.com/blog/2018/01/dl_3.html本专栏所采用的数据集为猴子数据集,数据集获取:https://pan.baidu.com/s/1p1lG_AhsrMVu7N3BEm6YQw提取码:hqjp# 导入相应的库# 导入相应的库from tensorflow.keras.preprocessing.image import ImageDataGeneratorimport matplotlib.pyplot as
2020-08-17 22:08:47
760
原创 动态规划 0-1背包问题
#include<iostream>#include<vector>#include<algorithm>using namespace std;int backpack(int* w, int* v, int W, int nums) { vector<vector<int>>res(nums+1, vector<int>(W+1, 0)); for (int i = 1; i <= nums; i++) {
2020-08-16 21:14:30
137
原创 力扣 64
一共考虑四种情况:上和左都是边界,即起点;上是边界;左是边界;上左都不是边界class Solution {public: int minPathSum(vector<vector<int>>& grid){ if(grid.size() == 0){ return 0; } int m = grid.size(); int n = grid[0].size(); .
2020-08-14 14:22:09
187
原创 tensorflow2.0实现GPU与CPU的切换
首先若不加任何配置情况下,是默认使用GPU的,在第一次调用GPU的代码之前加上下面一行就是用CPU计算了os.environ["CUDA_VISIBLE_DEVICES"] = "-1"
2020-08-12 09:36:41
1628
1
原创 9.基数排序
算法思想基数排序是按照低位先排序,然后收集;再按照高位排序,然后再收集;依次类推,直到最高位。有时候有些属性是有优先级顺序的,先按低优先级排序,再按高优先级排序。最后的次序就是高优先级高的在前,高优先级相同的低优先级高的在前。算法描述1.取得数组中的最大数,并取得位数;2.arr为原始数组,从最低位开始取每个位组成radix数组;3.对radix进行计数排序(利用计数排序适用于小范围数的特点);算法实现C++...
2020-08-06 23:41:12
182
原创 8.计数排序
算法思想计数排序是一种特殊情况下的一种排序:量大但是范围小比如:如何快速得知高考名次计数排序不是基于比较的排序算法,其核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。 作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。算法描述找出待排序的数组中最大和最小的元素;统计数组中每个值为i的元素出现的次数,存入数组C的第i项;对所有的计数累加(从C中的第一个元素开始,每一项和前一项相加);反向填充目标数组:将每个元素i放在新数组的第C(i)项,每放一个元素就将C(
2020-08-05 13:34:50
141
原创 7.堆排序
算法思想堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。算法描述1.将初始待排序关键字序列(R1,R2….Rn)构建成大顶堆,此堆为初始的无序区;2.将堆顶元素R[1]与最后一个元素R[n]交换,此时得到新的无序区(R1,R2,……Rn-1)和新的有序区(Rn),且满足R[1,2…n-1]<=R[n];3.由于交换后新的堆顶R[1]可能违反堆的性质,因此需要对当前无
2020-08-02 19:03:02
305
原创 6.归并排序
算法思想归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并算法描述1.把长度为n的输入序列分成两个长度为n/2的子序列;2.对这两个子序列分别采用归并排序;3.将两个排序好的子序列合并成一个最终的排序序列。...
2020-07-29 23:37:52
358
原创 5.希尔排序
算法思想希尔排序是希尔(Donald Shell) 于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,同时该算法是冲破O(n2)的第一批算法之一。它与插入排序的不同之处在于,它会优先比较距离较远的元素。希尔排序又叫缩小增量排序。希尔排序是把记录按下表的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。算法描述我们来看下希尔排序的基本步骤
2020-07-29 14:49:33
322
原创 4.插入排序
算法思想插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。算法描述一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下:1.从第一个元素开始,该元素可以认为已经被排序;2.取出下一个元素,在已经排序的元素序列中从后向前扫描;3.如果该元素(已排序)大于新元素,将该元素移到下一位置;4.重复步骤3,直到找到已排序的元素小于或者等于新元素的位置;5.将新元素
2020-07-28 21:57:51
317
原创 3.快速排序
算法思想快速排序的基本思想:通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。算法描述快速排序使用分治法来把一个串(list)分为两个子串(sub-lists)。具体算法描述如下:1.从数列中挑出一个元素,称为 “基准”(pivot);2.重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。3…在这个分区退出之后,该基准就处于数列的中间位置。这个称
2020-07-28 21:10:47
278
转载 python占位符
<div><p>占位符,顾名思义就是插在输出里站位的符号。占位符是绝大部分编程语言都存在的语法, 而且大部分都是相通的, 它是一种非常常用的字符串格式化的方式。</p><h2>1. 常用占位符的含义</h2><p>s : 获取传入对象的__str__方法的返回值,并将其格式化到指定位置</p><p>r : 获取传入对象的__repr__方法的返回值,并将其格式化到指定位置</p>...
2020-07-28 17:59:17
1303
原创 2.选择排序
选择排序思想选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。算法描述n个记录的直接选择排序可经过n-1趟直接选择排序得到有序结果。具体算法描述如下:1.初始状态:无序区为R[1…n],有序区为空;2.第i趟排序(i=1,2,3…n-1)开始时,当前有序区和无序区分别为R[1…i-1]和R(i…n
2020-07-27 22:27:40
165
原创 1.冒泡排序
冒泡排序思想基本思想: 冒泡排序,类似于水中冒泡,较大的数沉下去,较小的数慢慢冒起来,假设从小到大,即为较大的数慢慢往后排,较小的数慢慢往前排。直观表达,每一趟遍历,将一个最大的数移到序列末尾。算法描述1.比较相邻的元素,如果前一个比后一个大,交换之。2.第一趟排序第1个和第2个一对,比较与交换,随后第2个和第3个一对比较交换,这样直到倒数第2个和最后1个,将最大的数移动到最后一位。3.第二趟将第二大的数移动至倒数第二位…因此需要n-1趟;动图实现,(来源参考资料)代码实现:C++
2020-07-27 21:40:59
196
原创 十大排序算法总结
排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:关于时间复杂度平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序;O(n1+§))
2020-07-25 13:37:55
158
原创 图像算法面经总结
1.https://www.nowcoder.com/discuss/328520?type=post&order=time&pos=&page=1&channel=666&source_id=search_post2.https://www.nowcoder.com/discuss/262804?type=post&order=time&pos=&page=2&channel=666&source_id=search_pos
2020-07-24 18:00:22
999
算法笔记-上机训练实战指南-胡凡.zip
2019-07-10
算法笔记 晴神.zip
2019-07-10
十五个经典算法研究与总结、目录+索引.zip
2019-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人