- 博客(27)
- 资源 (4)
- 收藏
- 关注
原创 pysot中eval多种算法比较和画图
参考:https://blog.csdn.net/weixin_42495721/article/details/110855071。参考https://blog.csdn.net/weixin_42495721/article/details/110855071。安装miktex和Texwork,记得更新miktex,链接https://miktex.org/download,修改对应的otb.py文件,将对应的json文件路径进行修改即可。
2024-01-27 10:24:45 559
原创 win10+cuda11.8+opencv4.5.5使用cuda运行yolov5
1、安装Vs2019和cuda11.8,下载opencv4.5.5和对应的opencv_contrib-4.5.5,下载cmake的安装包。上面的安装可以找网上的资源,较好配置。3、打开cmake-gui,使用vs2019进行配置,x64,并按照下图进行选择。生成后,点击open_project,生成解决方案即可,时间较长,一般不会报错。此时可能会出现.cache下载不了的情况,可以使用网上对应的资源。cuda选上后,然后点击configure,编译无错后,选择。extra是安装cuda必备的选项。
2023-07-06 10:08:16 760
原创 上位机和海思之间串口调试小总结
大家可以看这篇博客中的海思平台的调试https://blog.csdn.net/dosthing/article/details/82951207本文主要说明当上位机发的数据海思板子通过串口接收时遇到的接受数据不完整的现象的解决办法发送端:#include<windows.h>UINT comOpen(){ commOpen = CreateFile(_T("\\\\.\\COM10"), GENERIC_READ|GENERIC_WRITE,0, NULL,OP
2021-10-21 20:37:48 617
原创 海思3559多线程kcf遇到的问题总结
1、 使用互斥锁解决全局变量共用导致的程序运行时每次错误结果都不一样2、 访问全局变量添加互斥锁,会带来时间上的额外开销这里我将KCF的代码添加多线程,将类的对象上锁,在海思平台上测试时间上有减少,但是使用VS2015 winows平台debug模式下编译时间反而增多,有没有大神帮忙解释一下?多谢...
2021-09-23 22:05:38 724
原创 neon优化opencv矩阵所有点求和
我在arm上通过neon的函数来优化矩阵所有点求和,参考的资料是《DEN0018A_neon_programmers_guide》neon优化后的矩阵所有点求和为0.16ms,opencv使用sum函数的求和时间为0.8ms。下面是我的代码,具体的函数表示可以参考https://gcc.gnu.org/onlinedocs/gcc-4.7.4/gcc/ARM-NEON-Intrinsics.html#ARM-NEON-Intrinsicsfloat matSum(cv::Mat A){ floa
2021-06-29 20:48:38 1129
原创 海思3559编译live555
1、找到live555最新的安装包http://www.live555.com/liveMedia/public/下载live555-latest.tar.gz2、安装live555,必须先安装openssl,我下载的是openssl-1.1.0i.tar.gz2.1先查看install里面的内容输入./config --prefix=xxx --openssldir=xxx --cross-compile-prefix=aarch64-himix100-linux-makemake insta
2021-06-05 15:55:00 695
原创 海思3559实现KCF算法
这里我参考IVE模块,采用双通道VPSS,实现KCF的跟踪功能。具体流程为:摄像头读取图像数据实时通过HDMI输出显示,中间经过VI-VPSS-VO。1、编写cmake文件CMAKE_MINIMUM_REQUIRED(VERSION 3.18)project(3559Project)SET(CMAKE_CXX_STANDARD 11)# 设置编译器选项:O3优化,显示所有警告SET(CMAKE_C_FLAGS "$ENV{CFLAGS} -O3 -Wall -g -lstdc++ -mcp
2021-05-12 21:52:33 2598 8
原创 海思3559单独编译ive模块
在3559上如果需要根据自己的需求进行开发的话,sample里面的例程是远远不够的,本文主要是自己在单独编译IVE模块时的一些经验总结,希望能对大家有所帮助。主要包含需要的源代码如下图所示需要的第三方库,opencv和Hisi。Hisi的.so和.a文件从out文件夹中获取Opencv的库我用的是3.4.1,编译参考https://blog.csdn.net/Somnr_m/article/details/114655589有了这些文件,就需要使用cmake进行编译,即可生成可执行文件。cm
2021-04-08 15:58:03 1053
原创 海思3559使用Yolov3进行目标检测
1、实验环境Ubuntu虚拟机+一根网线+USB转串口+小相机(支持IMX334等,可以查看)2、资料准备《HiMPP V4.0 媒体处理软件开发参考.pdf》这个资料主要介绍了图像是通过什么方式进行输入,处理,以及输出的。VI-VPSS-VO,VENC和VDEC,VGS画图等《HiSVP开发指南.pdf》这个资料主要介绍如何使用NNIE模块进行图像处理,以及ruyistudio的安装和使用教程。《HiSVP API 参考.pdf》等API等资料可以编写代码的时候在重点关注。推荐想学习的
2021-03-12 22:20:50 3119 7
原创 基于移动式管道滤波算法的仿真
参考论文《基于移动式管道滤波的红外小目标检测方法研究》仿真代码如下://判断一点的位置在邻域内bool pointInterNeibor(cv::Point2f pointPos, cv::Point2f curX,int n,int width,int height){ cv::Rect2f neiborRoi; int bordenLeft = 0; int bordenRight = 0; int bordenTop = 0; int bordenBottom = 0; bor
2021-01-12 11:52:36 1065
原创 windows下socket编程使用UDP协议绑定多个网卡
多个计算机使用UDP通信,如下图所示:计算机B作为计算机A和计算机C的接收方,需要绑定多个IP地址,这时需要分别弄两个初始化函数initnetwork和initnetwork2.主要代码实现为BOOL netstart;UINT RevThread(LPVOID pParam);struct sockaddr_in sinself;struct sockaddr_in sin3;SOCKET srecv;BOOL netstart2;UINT RevThread2(LPVOID p
2020-12-22 21:13:14 2667
原创 字节对齐和移位操作
int main(){#pragma pack(1) struct test { char a; short b; int c; long d; }; const testLen=sizeof(test); return 0;}如果程序前面加上#pragma pack(1)则程序为1字节对齐,得到(1+2+4+8)=15,如果不加的话,则需要保证结构体每个元素都要数据对齐,因此必须在a和b之间插入1字节的
2020-12-15 20:47:39 424
原创 抗遮挡的目标跟踪实验
参考Large Margin Object Tracking with Circulant Feature Maps这篇文章的一个小点做的实验,全文链接如下https://zhuanlan.zhihu.com/p/25761718主要利用该策略 抗遮挡的目标跟踪试验 ...
2020-11-23 17:16:33 909 1
原创 3559AV100例程操作步骤
在putty上配置端口,安装USB转串口驱动Ifconfig命令在putty中配置。ifconfig eth0 192.168.1.150 netmask 255.255.254.0;在开发板上配置:mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 192.168.1.66:/home/zynq/Desktop /mnt挂载 xx表示的是你的ubuntu系统的ip,通过ifconfig查看ip,nfs路径表示的是绝对路径,该路径.
2020-10-19 16:11:17 602
原创 YOLOV3+VS2015+OpenCV4.0实现目标检测
接着上次网络通信的第二步,实现图像处理这部分的内容。处理后的图像送回到发送方。这一部分,尝试使用opencv自带的dnn模块中集成了darknet的函数,直接调用。本文也是借鉴网上大神的部分代码。#include<stdlib.h>#include<Windows.h>#include <fstream>#include <sstream>#include <iostream>#include<opencv2\opencv.hp
2020-09-09 21:08:20 484 3
原创 使用winsock对图像进行通信的小例子
初步的想法是:使用两台计算机,使用网络进行通信,发送方传输视频图像,接收方每xxms接收图像数据,并使用opencv自带的YOLO实现识别,然后将识别到的目标的坐标信息和类别信息传回给发送方。下面记录一下我实现的第一步:由于对通信方面不是很了解,做了一个很简单的demo。发送一幅图片然后接受使用opencv显示。发送方:#include<WinSock2.h>#include<opencv2/opencv.hpp>#include <stdio.h>#inc
2020-09-09 20:40:57 174
原创 几种通信方式的小总结,以及网络通信的模板
CAN通信 ------CAN总线为广播式通信,一个节点发送信息会占据所有通信媒介,发送节点只管自己发送,不关心谁去接收,总线上所有通信节点都会收到信息。CAN在长距离传输上有优势网络通信 ------又叫以太网通信。是点对点的通信方式。发送节点在发送信息前,会首先想好信息要发送给谁,然后会吧自己的地址和接收方的地址放到报文里去。节点A需要发送信息给节点B,而其他节点没有收到信息,他们之间的通信媒介没有收到影响。两台电脑之间,速度快于串口通信串口通信 ------串口按位(bit)发送和
2020-08-20 22:06:09 1274
原创 一种高效区分红外弱小目标和云杂波的图像特征组合论文仿真
读了一篇论文,没事仿真一下,国产的论文真心难,不过有些思想还是可以借鉴的。下面主要说一下论文中的两个对多云和小目标的特性的分析:1、八邻域局部特征对比标准差这里只利用了标准差2、八方向剖线长度标准差void regionDeleteSec(structTargetParam_vector &TargetParam){ structTargetParam_vector TargetParamSec = TargetParam; if (TargetParamSec.len >
2020-08-20 20:56:13 231
原创 低小慢目标光电探测技术研究论文仿真
imageEnhance.h#pragma once#include<opencv2/opencv.hpp>#include<iostream>#include<vector>#define radio 1.0#define k 15// 将奇异值矩阵 V 内的所有元素 Vi按从小到大的顺序排列class imageEnhanceSVD{public: imageEnhanceSVD(); ~imageEnhanceSVD(); cv::M..
2020-07-24 09:15:45 444
原创 快速压缩跟踪(fast compressive tracking)(CT)算法实践
CT算法详细解析可以参考:快速压缩跟踪(fast compressive tracking)(CT)算法剖析论文源码在作者主页上下载,我测试了一下,主要是比较一下各个算法,看如何往嵌入式上移植。在这里插入代码片int main(int argc, char * argv[]){CompressiveTracker ct;Mat grayImg;VideoCapture cap;char c;cap.open("E:\\dataSet\\xinpingtai_video\\xidian.mp.
2020-07-22 21:14:59 486
原创 相机中目标成像大小和视场的计算方法
tanA=目标大小/作用距离=像元大小/f(焦距)π=180°,1°=π/180*1000=17.4mrad5.5um是可见光的像元大小25um是红外的像元大小视场计算:比如640512大小的,视场为tanA = (64025um/2)/20mm A=2.4°,2A=4.8°即为640这个方向的视场。目标大小90m9m,作用距离为4500m,焦距20mm,则计算出的像元大小为90/450020=0.36mm,一个像元为5.5um,则成像素为360um/5.5=65个像素f(光圈大小)=口.
2020-07-14 10:43:35 16737 3
原创 YOLOV4模型剪枝后在Xavier开发板上训练自己的数据集
一、标注数据使用labelImg进行标注,标注方法自行研究,标注完成后生成的是xml后缀的文件,该格式是VOC的标准格式。二、制作自己的数据集我这里总共标注训练数据4351张,类别为船(共一类),数据集制作参考yoloV4里面的readme。import osimport xml.etree.ElementTree as ETif __name__ == '__main__': list_file = os.listdir('F:\\155dataSet\\boatAll\\an
2020-06-30 17:14:32 4279 26
原创 使用yolov4检测识别自定义类别
1>下载darknet源码2>使用make进行编译3>找到src下的image.c文件4>修改draw_detections_v3函数,在const int best_class = selected_detections[i].best_class;下面加上 if(selected_detections[i].best_class!=8) { continu...
2020-05-13 10:57:38 3291 1
原创 OpenCV3.4+DarkNet+KCF在linux下编译
对于单文件的编译目录结构为----------main.cpp写一个CMakeLists.txt文件内容为cmake_minimum_required(VERSION 3.10.2) #----可以通过cmake -version查看project(kcfAndDarknet)add_executable(demo main.cpp)cmake_minimum_requir...
2019-11-21 21:44:01 587 9
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人