- 博客(22)
- 资源 (4)
- 收藏
- 关注
原创 基于YOLOv3和deep_sort的多目标跟踪
在Windows下用python实现的MOT,参考的这个GitHub https://github.com/Qidian213/deep_sort_yolov3YOLOv3用于检测,deep_sort主要是Kalman滤波+匈牙利匹配算法。改天再写一篇关于deep_sort原理的的blog,先实现一哈,看看效果。下面把我的流程说一下:我们需要的环境Numpy、sklean、OpenCV...
2019-01-03 22:03:14 34282 176
原创 Windows下编译YOLOv3
我们要想用YOLOv3检测一段视频,就要用到YOLOv3的检测器。首先我们要生成dll文件,并加上自己的代码就可以了。至于生成dll文件,这个里面介绍的很清楚了。https://github.com/AlexeyAB/darknet#how-to-use-yolo-as-dll我们可以用yolo_cpp_dll生成dll文件,然后下面是我检测的代码,其实这个代码就是yolo_conso...
2019-01-03 21:22:22 2143
原创 跳台阶问题(矩形覆盖问题)
跳台阶问题一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。一个递归问题,我们可以这样想:对于一个n级台阶,假设有f(n)种跳法。 如果第一次跳了1级,那么剩下n-1级就有f(n-1)种跳法 如果第一次跳了2级,那么剩下n-2级就有f(n-2)种跳法因为先后次序不同算不同结果,所以只有这两种方式,即f(n)=f(...
2019-01-02 16:13:33 260
原创 opencv处理两张图片的帧差(C++实现)
这个程序是两张图片做帧差,用C++实现的,把不同的地方用框框起来,仔细读一下程序,应该还是蛮简单的哈哈,opencv处理图片的基础。opencv配置不用我说了吧,源码cmake编译,然后导入vs即可。#include <iostream>#include <opencv2/opencv.hpp>using namespace std;using names...
2018-12-02 18:13:16 3489
原创 基于行人跟踪的例子(卡尔曼滤波+CAMShift)
最近在看目标跟踪的东西,写了一个最基本的opencv实现的程序,没有用到深度的东西,不过这是一个基础,任何深度的东西都是在这上面进行的,所以先搞懂这个demo吧哈哈。基本工作流程是:1)检查第一帧2)检查后面输入的帧,从场景的开始通过背景分割器来识别场景中的行人3)为每个行人建立ROI,并利用Kalman/CAMShift来跟踪行人ID4)检查下一帧是否有进入场景的新行人...
2018-12-02 18:05:23 6813 9
原创 kaggle Digit Recognizer(TensorFlow CNN实现)
开始用python写的KNN,但是不支持GPU,跑的太慢了,果断放弃,找了半天,终于找到TensorFlow CNN实现的了。之前按照莫烦的视频写过一个TensorFlow识别mnist数据集的demo,但是只输出准确率,不知道怎么去读csv文件,把向量喂入tf,还有保存训练出来的权重,说到底还是对TensorFlow不熟,果断去补TensorFlow了。这个也是用了两个卷积、池化,两个全...
2018-11-12 17:18:37 525
原创 vs2017+opencv3.4.2+opencv-contrib3.4.2+cmake编译
要用到contrib库里的一些函数,所以就学习了一下如何编译contrib。一.下载opencv和opencv-contrib源码,这里我下载了一样的版本,新建了一个文件夹,这里放cmake生成的vs。二.打开cmake第一个路径是opencv源码的路径,第二个是放cmake生成的vs的路径,都在第一张图里。三.点configure,等到执行完毕,会出现一些红的,再conf...
2018-10-26 21:29:31 1330 1
原创 Json的两种用法之rapidjson
一.json.hpp这个用法很简单,之前也有过介绍,json.hpp下载地址在之前的博客二.rapidjson因为json.hpp不能读取中文,所以被逼无奈找了rapidjson,说真的还是json.hpp好用,和c语言的数组一样,用着很方便。而且rapidjson好像有很多用法,所以找了一篇大神的博客,他的写法很简单也很实用,我在他的基础上修改了一下。需要去GitHub上下载rapi...
2018-10-21 18:04:43 870
原创 安装python的opencv-contrib
用sift和suft特征提取的时候,xfeature2d在opencv-contrib库中。我的方法如下:pip uninstall opencv-pythonpip install opencv-contrib-python==3.3.0.10先卸载之前的opencv库,然后安装opencv-contrib-python,本来默认安装的是3.3.4.18版本,结果就是不能用,所...
2018-10-13 22:32:18 8980 3
原创 TensorFlow(四)CNN
用CNN进行训练可以提高准确度,例如之前只是单独的加一个隐藏层,识别数字的准确度在87左右,但是用CNN在训练1000次的话,准确度能到达97左右。 本次运用mnist数据集,识别图片中的数字为0-9哪一个,有两个卷积层,两个全连接层,激活函数用的relu,最后softmax分类,训练1000次计算准确度并输出(每50次输出一次)。from __future...
2018-09-14 20:36:18 144
原创 TensorFlow(三)dropout
运用dropout防止过拟合,还是之前的数据,用tensorboard进行可视化, 如果没用dropout的话, test的loss要比train的loss大,这就是过拟合了,即训练的很好,但是测试的时候效果远比训练的时候差from __future__ import print_functionimport tensorflow as tffrom sklearn.dat...
2018-09-14 17:54:46 1191
原创 TensorFlow(二) Classfication
导入mnist数据集,0-9 10个数字的图片,经过训练后, 预测图片中是哪个数字,运用softmax进行分类,最后计算准确度from __future__ import print_functionimport tensorflow as tfimport numpy as npimport matplotlib.pyplot as pltimport pandas as pd...
2018-09-14 17:39:05 381
原创 TensorFlow(一)add_layer
定义一个(300,1)的列x_data, 同时生成一个y_data, 然后进行预测, 输入-隐藏-输出 三层,训练1000次, 每50次看loss变化, 并把原始数据和预测的数据可视化import tensorflow as tfimport numpy as npimport matplotlib.pyplot as pltdef add_layer(inputs,...
2018-09-14 17:29:03 1019
原创 C++实现Socket传输json封装的Mat
一般进行图片传输时,先用openCV把图片转换为Mat,然后封装到json当中,然后再从json中解析出来。这次是客户端向服务端传输。Ps:客户端第一次发送一张图片,第二次发送两张图片,后面依次循环,转成Mat封装到json中,服务端接收并解析,如果是一张图片生成名称和相似度,如果是两张只生成相似度,封装到json,并返回至客户端(用于人脸识别的,读者可以根据自己的需要改动)客户端:图片转...
2018-08-17 20:52:09 2321 1
原创 C++实现Socket传输json(UDP)
服务端发送给客户端,服务端有一串字符串,按照分隔符将其分割,并存入json,发给客户端,然后输出。Json.hpp 下载地址https://github.com/nlohmann/json/tree/develop/include/nlohmann一.服务端main.cpp#include <stdio.h>#include<iostream>#i...
2018-08-17 19:58:34 11581 3
原创 VS2017配置openCV3.4
在网上找了很多教程,自己也尝试过很多次,第一次自己配置完成,新建另一个项目时得重新配置;第二次生成了.props文件,每次导入即可,但是到其他电脑上就得重新配置;第三次就琢磨了一个简便版。相比较来说,个人更喜欢第三个,最后会附上第二种方法。1.首先下载opencv2.配置环境变量右键我的电脑->属性->高级系统设置->高级->环境变量->系统...
2018-08-17 16:25:50 3084 1
原创 python读xml文件
图片标注时忘记有多少类别了,写了个程序,把所有图片的类别打印出来代码如下:s = []for p in range(1250): p = p + 1 if (p > 0 and p < 10): a = '0000' + str(p) elif (p >= 10 and p < 100): a = '000' + str(p) e...
2018-08-14 17:29:53 146
原创 C++ 实现json形式的Socket传输图片
大致流程:客户端读取图片,经过Base64编码,转成字符串的形式,保存到json中,通过socket传到服务端,然后Base64解码,再转换成图片一.服务端1.main.cpp#include <iostream>#include <stdio.h>#include "Base64_1.h"#include <winsock2.h> ...
2018-08-11 21:11:09 3384 3
原创 图片批量重命名
1.把图片全部选中,右键选中一张,重命名,直接把原照片名删掉就可以,例如1.jpg只保留.jpg,然后回车,这样所有图片就变成了 (1).jpg .... (n).jpg2.新建txt文档,加入以下代码@Echo Off&SetLocal ENABLEDELAYEDEXPANSIONFOR %%a in (*) do (set "name=%%a"set "name=!na...
2018-08-02 20:09:23 2178 1
原创 yolov3 训练自己的数据集
历时4天,沐浴着22楼的阳光,围着服务器取暖,终于把权重文件给训练出来了,期间遇到一些问题,下面我会列举,以免大家走太多弯路;然后服务器配置还不正确,对于一个小白来说,简直崩溃,又去网上找了大量教程,终于把cuda版本改成了9.0,GPU能用了,但是opencv还是不能用,一会再去调一下。 先放最后的测试结果,训练的是表的类型,一共有180张图片(训练集+测试集),...
2018-08-01 15:49:26 6053 3
原创 C# Socket 实现文字传输
通信基本流程:服务端:创建一个用于监听连接的Socket对象 用指定的ip地址和端口建立一个EndPoint对象(相当于Socket的端点) 用Socket的Bind()方法绑定EndPoint 用Socket的Listen()方法开始监听 接收到客户端的连接,用Socket的Accept()创建一个新的用于和客户端进行通信的Socket 通信结束关闭Socket 客户端:...
2018-07-25 09:33:46 3121
原创 C# 调用SQL Server存储过程
1.创建一个student表,里面有这几个元素2.创建一个存储过程,右键点击存储过程,并在最后开始写代码 3.例如写一个名为myclass的存储过程create proc myclass @name nvarchar(50), @age int, @gender nvarchar(50)as insert into dbo.student(name, age, ge...
2018-07-24 20:57:58 3245
C++实现Socket传输json封装的Mat
2018-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人