自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(149)
  • 资源 (10)
  • 收藏
  • 关注

原创 《学习之道》 读书记录

如 verilog 学习总结 这篇文章所说,后面关于读书的博客 重点写自己体会比较深的地方。这个书的起源是Coursera 上面很火的课程《Learning how to learn》, 貌似是根据课程字幕翻译来的, 几个主讲者都是 学术大牛, 其中一个男教授 属于 世界顶级专家的行列, H-index 非常高。大概体会是 这书里面说的很多学习方法和原则, 自己在初中和小学的时候 好多都是 ...

2019-02-18 22:03:24 746 1

原创 内存错误排查利器 ASAN的使用,本机或者交叉编译

使用c++开发系统,代码太大,逻辑太复杂以后,碰到内存问题,如果只靠静态分析太难了。然后自己想是不是开发一个工具,监视分配的每一块内存的访问情况,然后搜了下,发现已经有了,就是ASAN。将报错信息最后一列的偏移地址,即0x开头的地址全部拷贝出来到一个文本文件addr.txt中,每个地址一行。可以使用 addr2line 或者 llvm-symbolizer.exe 定位到具体代码位置,两者都是NDK提供的工具。PC上直接执行的话,如果是本地编译,那直接可以看到崩溃的调用栈,精确到行号。

2024-01-24 11:28:59 477

原创 智能指针的延迟报错问题

智能指针的延迟报错问题

2024-01-04 10:52:41 349

原创 深度学习实战第11章代码

安装cassandra.cqltypes包查看这个issue。https://github.com/deep-learning-with-pytorch/dlwpt-code/issues/27解决方案:导入一下包from cassandra.cqltypes import BytesTypefrom diskcache import FanoutCache, Disk,corefrom diskcache.core import iofrom io import BytesIOfrom

2023-09-14 14:00:51 111

原创 g2o源码阅读

之前写的g2o源码阅读笔记,分享给有需要的人。整个文档请自行下载,这里只贴一个图片。

2023-03-03 14:54:53 163

原创 备份一个文本处理python代码

一点python代码

2022-09-29 08:49:17 302

原创 音频编解码相关的资料总结

最近工作需要做一个音频推送,也就是将音频数据推送到某个服务器,服务器解码后播放,服务器是乙方负责,但乙方貌似只是在网上抄代码,根本不清楚一些技术细节和要点,等于自己来把坑踩一遍,,,首先,需要得到PCM数据,也是就找了个WAV文件,因为WAV文件里面往往直接包含了原始PCM数据,然后发现很多介绍WAV文件格式的资料和实际情况对应不上,主要是文件头的结果对应不上。比如百度文库的这篇文章,https://wenku.baidu.com/view/fb783def89eb172ded63b77e.html这

2021-03-26 20:44:59 393

原创 cmake使用pkg-config

pkg_check_modules(ffmpeg REQUIRED IMPORTED_TARGET libavcodec libavformat libavutil)add_executable(softDecode demuxing_decoding.c)target_link_libraries(softDecode PRIVATE PkgConfig::ffmpeg)

2021-02-04 09:58:01 930

原创 一个编译错误

/usr/include/c++/4.2.1/ctime:66: error: '::clock_t' has not been declared/usr/include/c++/4.2.1/ctime:68: error: '::tm' has not been declared/usr/include/c++/4.2.1/ctime:70: error: '::clock' has not been declared/usr/include/c++/4.2.1/ctime:71: error: '

2021-01-15 10:46:46 448 3

原创 Halide 初步使用

最近开始使用Halide做点事情,说找点资料,结果网上基本都是翻译下官方教程,还得自己摸索。Halide的目的是更方便地做优化,即不牺牲代码可读性的情况下利用硬件加速代码执行。更详细的说明参考原始论文。这里直接说怎么上手的事情。Halide的文档确实不如OpenCV,这就是差距吧。就比如说,首先应当介绍下核心的数据结构以及围绕这些数据结构有哪些关键API,《Learning OpenCV》这方面就做得比较好。所以 这篇文章大致按照这个套路来,而不是上来就直奔有哪些优化操作。看了Tutorial的第一个

2021-01-07 21:06:55 1344

原创 windows 10 Tensorflow GPU 版本安装

时隔一年,再装tensorflow,发现windows10上面安装已经比之前简单了很多https://www.tensorflow.org/install/gpu?hl=zh-cn现在GPU 版本和 CPU版本已经合并了,所以可以直接安装pip install tensorflow碰到错误,可能是因为之前装 tensorflow-gpu失败导致的https://www.cnblogs.com/conver/p/11141176.htmlCannot uninstall ‘wrapt’. It

2020-12-05 09:25:54 181

原创 ffmpeg 常用功能

1 视频转码:比如一个视频的编码是MPEG4,转换成H264编码          ffmpeg -i input.mp4 -vcodec h264 output.mp4  //input.mp4是指要转换视频的地址;output.mp4是转化后视频的存放路径         相反也一样 &n

2020-11-23 17:21:52 728 2

原创 shell 脚本中需要使用root权限的情况

shell 脚本中需要使用root权限的情况最近因为一些工作有这个需求,如果直接在脚本中写 sudo su 会发现脚本运行这行后就退出了,查了下做法sudo su - <<EOFcd /home/hai/rm /etc/xxx/yyyEOF

2020-11-20 18:11:29 4309

原创 架设网站

很久没做网站了,有点生疏,最近帮朋友架个网站,一个静态页面就行。先申请域名,国内域名后面存在备案的问题,所以直接去国外申请,试了一些网站,最后在NameSilo申请了,比较简单,支持支付宝,关键是费用超低, 几块钱软妹币就注册了一个域名,高档服务一律没选,2购买服务器,腾讯或者阿里云都可以,随便选了个腾讯的3 域名解析,在 NameSilo 里面的控制面板里面取 解析域名为 服务器的IP,这个步骤网上有很多文章了,步骤固定,最后结果如下网上很多地方说半个小时就生效,但实测来看花的时间更久,

2020-11-19 14:49:53 278

原创 lighttpd初步使用

朋友做网站,python自带的server老是用着用着休眠,查了下,好像自带的server是容易这样,官方也说不要用于生产环境。改成lighttpd,照着网上的文章安装,启动服务,但网站链接不上,netstat -tnlp | grep lighttpd 看到tcp6 0 0 :::80 ::???? LISTEN 26559/lighttpd这个tcp6就有点诡异, 一般好像是tcp啊,英文谷歌

2020-11-19 11:13:58 603

原创 linux上面绑定某个线程到指定CPU上

可能在arm平台上用这个比较多点,因为ARM平台上面一般有所谓大小核,把 运算量多的线程绑定到大核上往往能提高效率。不这样做的话,有时候系统会让大核躺平不干活。查看cpu信息用 cat /proc/cpuinfo编程步骤:1 代码最前面#define _GNU_SOURCE不加这个链接找不到相应函数2 需要绑定的线程调用如下函数即可,参数为CPU核心编号,注意,是从0计数的short CorePin(int coreID){ short status=0; cpu_set_t

2020-10-30 16:44:18 367

原创 win10 安装 ubuntu子系统

1 开启win10系统本身的子系统支持,通过如下路劲开启子系统的支持,并重启控制面板—>程序—>程序和功能—>启用或关闭Windows功能—>适用于linux的Windows子系统2命令开启支持,在powershell或者cmd输入下面指令Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux也会让重启!所以 做完前两个步骤重启3下载离线包https://

2020-09-07 13:55:05 244

原创 VirtualBox使用

安装主程序以后,安装扩展包,如果是历史版本,扩展包去http://download.virtualbox.org/virtualbox/下载设置共享文件夹,选上自动挂载、固定挂载,输入一个路径,比如/mnt/shared 之类的。然后设置 用户组sudo usermod -aG vboxsf $(whoami)重启后生效...

2020-09-03 17:48:37 355

原创 广度优先搜索(BFS)用于图像处理

最近做一些需求,发现 BFS 还挺好使,经常用, 主要是用于 特定目的 的连通区域分析理论上 深度优先搜索也可以达到同样效果,但实际运用时发现 基于栈实现深度优先搜索在处理 比较大的连通区域时 导致 栈溢出, 那么还是使用 BFS 吧。// i - row,void bfsFix(int i, int j, cv::Mat & img, int thresholdValue, int destValue) { int m = img.rows; int n = img.cols; in

2020-07-18 11:40:44 359

原创 opencv获取RTMP/RTSP视频流数据 并 显示或者进行进一步处理

临时接到这个需求,比较陌生,搜了很多资料,比如 libRTMP, rtmpdump等工具,最后发现原来 opencv的 VideoCapture 可以直接打开 RTMP视频流。但是 直接去官网下载的 dll 却不行,看了下 VideoCapture 的构造函数,第二个入参有很多可选项,其中一个是 CAP_FFMPEG, 于是 把 OpenCV重新编译了下, 带上FFMPEG选项, 这下就成功了!非常简洁!测试代码如下void rtmpTest() { string source = "rtmp:/

2020-07-07 14:54:33 6750 3

原创 the little schemer 学习

最近 学习了下 the little schemer 这本书,出版时间比较久了,最初可能是听王垠说的吧,一直没去看,不太习惯看电子版的技术书。但今年看到国内引进了,于是买来看看。前面几章都比较容易,后三章比较难。倒数第二章看的时候有些断断续续,没明白作者想要干啥,于是去网上搜了下,原来Y组合子的目的是为了 给匿名函数实现递归。倒数第三章 在草稿纸上写写 就明白 过程是怎么发生的了。最后一章作者倒...

2020-03-15 16:09:58 564

原创 unordered_map 非内置类型自定义hash

struct KeyHasher{ std::size_t operator()(const std::pair<unsigned int, unsigned int>& k) const { using std::size_t; using std::hash; return ((hash<unsigned int>()(k.first) ...

2020-01-08 16:35:25 410

原创 基于eigen实现 bundle adjustment

纯粹是演示性代码,用于展示BA过程,没有做稀疏矩阵相关的优化#include <iostream>#include <opencv2/opencv.hpp>#include <opencv2/features2d/features2d.hpp>#include <opencv2/highgui/highgui.hpp>#include &l...

2019-12-27 15:26:27 448 3

原创 那些奇葩的编译和链接错误

早就该记录一下1 某个工程编译出的库,其他工程链接不上, 查看了符号,是有的,发现 cmakelists.txt中的版本号不一样,把 低的改高, 好了2 编译某工程, 发现 很多地方报 assert 未声明错误, 原来是 自己代码中包含了一个空的assert.h ,去掉这个文件好了,3...

2019-12-09 11:45:20 157

原创 博弈,游戏,是否有先手必胜的情况

最近做一个题, 说是 判断 某个游戏 是否有先手必胜的情况, 在草稿纸上画了画, 想了一阵,发现 把 所有当前游戏的局面描述为一个状态, 状态之间的变化 实际上构成一颗 多叉树, 如果 有先手必胜的情况, 那么这棵树 就会具有某种特点,即 包含某性质的某颗子树, 然后自己 便陷入 严格定义树的特定,然后 试图编码查找这样的树, 发现 挺恼火。第二天开会的时候, 发现可以不用管这么多。树中某个节点...

2019-12-07 21:45:34 554 1

原创 稀疏矩阵的乘法

最近做一个题, 稀疏矩阵的乘法, 自己想了下,最直观的想法当然是 记录 下来 哪些 不为0的元素,只对这些元素进行操作, 假设 A * B, 由于 矩阵乘法的定义是 A的某行乘以 B的某列, 产生的第一个想法是 记录下来 A的每一行中不为0的元素的列号, 记为 集合 AN, 记录下来 B的每一列的行号,记为 集合 BN。然后 进行计算。 等写代码的时候才发现, 需要列号 和行号对应 两个数字 才...

2019-12-07 21:37:31 1704 2

原创 ROS opencv 版本冲突

1.必须要先把旧版本的cv_bridge卸载掉:sudo apt-get remove ros-indigo-cv-bridge2.然后下载新版本的cv_bridge:进入catkin_ws/src 目录,执行git clone https://github.com/ros-perception/vision_opencv.git3.修改cv_bridge中的cmakelists.txt...

2019-12-05 17:07:48 1354

原创 ROS 代码去掉 ROS 依赖

不少 开源的SLAM系统代码 依赖ROS, 引入了额外的依赖, 性能也有一定下降,调试也不方便, 因此去掉ROS依赖 有不少好处,第一个工作是 数据流的处理, 依赖ROS的时候, 数据流一般是某个节点发布传感器数据,另外一个节点获数据,做后续处理, 这个是需要改的地方第二个工作是 一些代码和ROS高度耦合, 大量使用 ROS的辅助函数,需要进行替换, 逐个进行注释太慢了, 源代码 开头加上如...

2019-12-05 11:01:47 1470

原创 寻找重复数

出自 LeetCode 287,给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3来源:力扣(LeetCode)链接:https://leetcode-cn.co...

2019-12-02 20:36:07 118

原创 鱼眼摄像头 单目标定 双目标定

准确地说是 使用鱼眼模型 对摄像头进行单目和双目标定直接贴代码如下, 如果是 非鱼眼, 把相关函数名 和相关入参改下就可以了, 代码中处于 注释状态#include <opencv2/opencv.hpp>#include <iostream>#include <dirent.h>#include <fstream>using nam...

2019-11-29 17:52:54 893

原创 DSO missing from command line原因及解决办法

DSO missing from command line原因及解决办法一种可能是 :ld自动递归地解析链接的lib,当加载A库的时候,一切还正常,但是加载B库的时候,ld会自动的去解析他的静态链接,所以就重复了,导致error adding symbols说明:链接取决于模块的顺序。首先请求符号,然后从具有它们的库中链接。所以你必须首先指定使用库的模块,然后指定它们之后的库。喜欢这个:g...

2019-11-13 10:58:51 18003

原创 g2o源码阅读详解

最近 因为工作原因 终于 比较细致地阅读了下 g2o源码, 先写了个word文档 ,应该是 网上比较详细的了后面上传到 下载资源中

2019-11-05 15:50:12 606 2

原创 只出现一次的数字

最近做一个题,除了某个元素只出现一次以外,其余每个元素均出现了三次。找出那个只出现了一次的元素。要求 o(n)算法且不使用额外空间,想了很久,想到一个方案,统计每一位的出现次数,比如数字是32位 int 型,那么统计32个位上 1和0 的出现次数,某个数字出现3次,那么他的每一位都会出现3次。出现一次的数字某个位只会贡献1次出现。组合每个位上出现次数不是3的整数倍的值,就知道只出现一次的那个数了...

2019-10-26 10:22:53 138

原创 走向 智能指针

知道智能指针很久了,最近改造一个c# 代码,c#自动回收内存,那叫一个爽,c++却没有这个功能,但这个c#代码内存使用情况复杂, 直接改成手动回收相当麻烦,于是 不得不使用智能指针#include <iostream>#include <memory>class Segment{public: int x; int y; Segment(int _x,...

2019-10-06 11:24:36 238

原创 移植opencv 到 ARM 平台

最近移植 一个比较复杂的程序 到 ARM 平台, 这个程序的 依赖比较多, 最麻烦的一个依赖是opencv, 因为 opencv本身有不少依赖!参考了 网上一些博客, 碰到的坑倒不算多以 opencv-3.2.0 为例, 有的博客说 先要把 jpeg/zlib 之类的依赖的源码都下载下来,编译好,再编译 opencv, 后来发现其实没必要,opencv已经把这些依赖的源码放在 ThridPar...

2019-09-17 11:31:59 400

原创 yolov3 yolo层 涉及到的数据的内存分布情况

整个 yolov3 涉及到的比较复杂的数据在内存排布 就是 yolo层了,根据代码理了下,主要是 根据entry_index()进行分析yolov3有3个yolo层, 具体结构参考https://medium.com/@chih.sheng.huang821/深度學習-物件偵測yolov1-yolov2和yolov3-cfg-檔解讀-75793cd61a01这个网址估计不容易访问,直接贴图...

2019-06-28 15:27:24 2226 3

原创 Huffman 编码 C++实现

大约十年前就该完成的程序,今天才搞定了,花了三个小时,直接看《算法引论-一种创造性方法》第6章 haffman 编码的方法 和 第四章 堆 的实现, 书上给的是最大堆, haffman 编码 需要用最小堆, 使用数组实现堆, 如果起始坐标从0开始带来一些麻烦,书上给的是从1 开始。之所以说十年前,是因为大三的时候(按大三算还没到10年),信息论的课上肯定是讲了这个算法的, 算法本身很直观,思想...

2019-06-23 20:38:46 3124

原创 Windows 上使用 linux上的各种命令行工具

试了好些工具,比如 windows git带的bash, 发现 ls 这个命令特别慢,后面知道了 GNU Win32, 工具非常全,上千个,常用的基本都有了,但 ls 仍然很慢,偶然发现 powershell 中很快, 又才注意到 powershell中直接运行 ls实际不是 GNU Win32的ls,而是系统自带的于是 把 GNU Win32中的 ls.exe 命名为 ls2.exe 就可...

2019-06-20 09:42:16 5196 2

原创 编程之美---正则匹配

动态规划,关键是处理 * 号, 根据匹配次数进行 状态转移,关键点是 多次匹配时, 保留星号,待匹配字符串划掉当前匹配字符,通过递归,即为多次匹配,不需要手动去写一个循环来处理 多次匹配。仅仅 匹配一次时, 星号去掉,待匹配字符串划掉当前匹配字符。class Solution {public: int width; bool isMatch(const char * s, const c...

2019-06-18 10:18:22 119

原创 建立测试集

从数据集中 每个类别等比例 抽取 出图像 建立一个测试集# -*- coding: utf-8 -*-"""Created on Mon Jun 17 17:51:18 2019从TTKLight 中 提取出 测试集, 分割成两个数据集这里只获取文件名, 然后使用 bash 命令进行 真正的 move@author: haithink"""imgPath = "E:\\Datas...

2019-06-17 18:21:11 592

g2o源码阅读笔记;g2o源码阅读笔记

g2o源码阅读笔记 g2o源码阅读笔记g2o源码阅读笔记g2o源码阅读笔记g2o源码阅读笔记g2o源码阅读笔记g2o源码阅读笔记g2o源码阅读笔记g2o源码阅读笔记g2o源码阅读笔记 非线性优化框架 ORB-SLAM LM优化 SLAM后端

2023-03-03

G-传感器调试.7z

Android 安卓 加速度计 数据实时显示 G-传感器调试

2020-08-17

g2o源码阅读.docx

g2o源码阅读详解,

2019-11-05

INTEL Parallel Studio XE 2016 With Update 1 License

INTEL Parallel Studio XE 2016 With Update 1 License

2018-02-07

openGL 纹理使用 总结

openGL 纹理使用 总结

2016-08-10

机器学习与模式识别PRML_Translation

机器学习 模式识别 PRML 中文版 伯克利 大神 翻译

2015-09-10

2011计算机研究生入学考试专业课试题及答案解析

2011计算机研究生入学考试专业课试题及答案解析 2011计算机研究生入学考试专业课试题及答案解析 2011计算机研究生入学考试专业课试题及答案解析2011计算机研究生入学考试专业课试题及答案解析 2011计算机研究生入学考试专业课试题及答案解析 2011计算机研究生入学考试专业课试题及答案解析

2011-07-15

windows程序设计

windows程序设计 源代码 英文版 中文版

2010-02-19

vc资料《精通MFC程序设计》

学习VC用的一点好东西 这本书相当不赖 大家好好看吧 有好的东西就拿来共享

2008-09-16

空空如也

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

TA关注的人

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