C++ 备忘录
[TOC]
相关书籍
入门
C++ Primer Plus
C++ Primer
提高
深度探索C++对象模型
More Effective C++ 35
Effective C++ 55
Effective Modern C++
进阶篇
STL 源码剖析
C++标准库
GOF23 设计模式 C++
C++并发编程实战
C++性能优化指南
网络编程
Linux多线程-服务端编程-使用muduo c++ 网络库
Unix网络编程 三件套
TCP/UP协议 三卷
APIs标准库1.int/float to string/array:C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串,下面列举了各函数的方法及其说明。● itoa():将整型值转换为字符串● ltoa():将长整型值转换为字符串。● ultoa():将无符号长整型值转换为字符串。● gcvt():将浮点型数转换为字符串,取四舍五入。● ecvt():将双精度浮点型值转换为字
...
Tools Android emulator -- Anbox
Posted on
|
In
Tools
Install by snap (Ubuntu)anbox-kernel
1234567$ sudo add-apt-repository ppa:morphis/anbox-support$ sudo apt update$ sudo apt install linux-headers-generic anbox-modules-dkms$ sudo modprobe ashmem_linux$ sudo modprobe binder_linux
anbox
1$ sudo apt install anbox
链接:https://zhuanlan.zhihu.com/p/65463076
UsingDocker 点击anbox图标
adb安装Ubuntu/Debain
1sudo apt install android-tools-adb
adb使用:
adb logcat:
1234567891011121314//格式1:打印默认日志数据adb logcat //格式2:需要打印日志详细时间的简单数据adb logcat -v time//格式3:需要打印级别为Er
...
python APIs
python 备忘录
[TOC]
简单APIFUN: 重命名目录下文件
filter
lambda
123456def format_filename(dir): fs = os.listdir(dir) for f in fs: new_n = ''.join(filter(lambda ch: ch not in '# (){}#', f)) print(f, ' ----> ', new_n) os.rename(dir+f, dir+new_n)
traceback123456def log_error(e): print('err:', e) print('err:', request.form) print('err file:', e.__traceback__.tb_frame.f_globals["__file__"]) # 发生异常所在的文件 print('err file line:', e.__traceback__.tb_lineno) # 发生异常
...
Paper-CV-Image Inpainting
Posted on
|
In
CV_Apply
,
Image Inpainting
image inpainting图像修复
传统的图形学和视觉的研究方法,主要还是基于数学和物理的方法。然而随着近几年深度学习在视觉领域取得的卓越的效果,视觉领域研究的前沿已经基本被深度学习占领。在这样的形势之下,越来越多的图形学研究者也开始将目光投向深度学习。在图形学和视觉交叉的领域,一系列问题的研究正在围绕深度学习火热展开,特别是在图像编辑(image editing)和图像生成(image generation)方面,已经初见成效。今天我们讨论的问题,图像补全(image inpainting),正是介于图像编辑和图像生成之间的一个问题。
图像补全最初是一个传统图形学的问题。问题本身很直观:在一幅图像上挖一个洞,如何利用其它的信息将这个洞补全,并且让人眼无法辨别出补全的部分。这个问题对我们人类似乎很容易,比如下面这个洞,大家很容易脑补出洞里应该有窗户和门,背景是墙,如果还有一些绘画天赋的话,大概就能想象着把它补出来。但是这个任务对于计算机却显得格外困难,首先这个问题没有唯一确定的解,其次如何利用其它的信息?如何判断补全结果是否足够真实?
以深度学习为代表的机器学习,正在逐渐席卷整个
...
Paper-CV-Super Resolution
[TOC]
高分辨率
单张照片
多张照片
SISR 高清图片SRCNN [ECCV2014]开山之作,三个卷积层,输入图像是低分辨率图像经过双三次(bicubic)插值和高分辨率一个尺寸后输入CNN。
图像块的提取和特征表示,特征非线性映射和最终的重建。使用均方误差(MSE)作为损失函数。
code: http://mmlab.ie.cuhk.edu.hk/projects/SRCNN.html
SCN ICCV 2015FSRCNN [ECCV2016]特征提取:低分辨率图像,选取的核9×9设置为5×5。
收缩:1×1的卷积核进行降维。
非线性映射:用两个串联的3×3的卷积核可以替代一个5×5的卷积核。
扩张:1×1的卷积核进行扩维。
反卷积层:卷积层的逆操作,如果步长为n,那么尺寸放大n倍,实现了上采样的操作。
FSRCNN与SRCNN都是香港中文大学Dong Chao, Xiaoou Tang等人的工作。FSRCNN是对之前SRCNN的改进。
主要在三个方面:
一是在最后使用了一个反卷积层放大尺寸,因此可以直接将原始的低分辨率图像输入到网络中,而不是像之
...
Algorithm -- Data Mining
Posted on
|
In
Algorithm
,
Data Mining
数据挖掘
[TOC]
奇异值分解SVD1、特征值分解EVD实对称矩阵如果有n阶矩阵A,其矩阵的元素都为实数,且矩阵A的转置等于其本身($a_{ij}=a_{ji}$),(i,j为元素的脚标),则称A为实对称矩阵。
如果矩阵𝐴是一个$𝑚×𝑚$的实对称矩阵(即$𝐴=𝐴^T$),那么它可以被分解成如下的形式
$$A = Q \sigma Q^T=Q\left[\begin{matrix} \lambda_1 & \cdots & \cdots & \cdots\ \cdots & \lambda_2 & \cdots & \cdots\ \cdots & \cdots & \ddots & \cdots\ \cdots & \cdots & \cdots & \lambda_m\\end{matrix}\right]Q^T\tag{1-1}$$
其中𝑄为标准正交阵,即有$𝑄𝑄^𝑇=I$,$\sigma$为对角矩阵,且上面的矩阵的维度均为𝑚×𝑚。$𝜆_
...
Math -- Matrix
Posted on
|
In
Math
矩阵协方差矩阵正交矩阵正定矩阵https://zhuanlan.zhihu.com/p/44860862
【定义1】给定一个大小为 $n \times n$ 的实对称矩阵 $A$ ,若对于任意长度为$n$ 的非零向量 $x$,有$x^TAx > 0$ 恒成立,则矩阵 $A$ 是一个正定矩阵。
负定矩阵对角矩阵相似矩阵可逆矩阵初等矩阵等价矩阵施密特正交化实对称矩阵斜对称矩阵反对称矩阵旋转矩阵黑塞矩阵稀疏矩阵分解
Scipy (Python 的科学计算包)
[TOC]
sparsekron1234567891011121314>>> from scipy import sparse>>> A = sparse.csr_matrix(np.array([[0, 2], [5, 0]]))>>> B = sparse.csr_matrix(np.array([[1, 2], [3, 4]]))>>> sparse.kron(A, B).toarray()array([[ 0, 0, 2, 4], [ 0, 0, 6, 8], [ 5, 10, 0, 0], [15, 20, 0, 0]])>>> sparse.kron(A, [[1, 2], [3, 4]]).toarray()array([[ 0, 0, 2, 4], [ 0, 0, 6, 8], [ 5, 10, 0, 0], [15, 20, 0, 0]])
$A \times B$
...
Graphices Point Cloud 点云数据处理方法-刚性篇
Posted on
|
In
Graphices
,
PointCloud
[TOC]
点云数据处理方法概述
ICP点云配准就是我们非常熟悉的点云处理算法之一。实际上点云数据在形状检测和分类、立体视觉、运动恢复结构、多视图重建中都有广泛的使用。点云的存储、压缩、渲染等问题也是研究的热点。随着点云采集设备的普及、双目立体视觉技术、VR和AR的发展,点云数据处理技术正成为最有前景的技术之一。PCL是三维点云数据处理领域必备的工具和基本技能,这篇文章也将粗略介绍。
三维点云数据处理技术(刚性变换篇)1. 点云滤波(数据预处理)点云滤波,顾名思义,就是滤掉噪声。原始采集的点云数据往往包含大量散列点、孤立点,比如下图为滤波前后的点云效果对比。
点云滤波的主要方法有:双边滤波、高斯滤波、条件滤波、直通滤波、随机采样一致滤波、VoxelGrid滤波等,这些算法都被封装在了PCL点云库中。
2. 点云关键点(提取算法)我们都知道在二维图像上,有Harris、SIFT、SURF、KAZE这样的关键点提取算法,这种特征点的思想可以推广到三维空间。从技术上来说,关键点的数量相比于原始点云或图像的数据量减小很多,与局部特征描述子结合在一起,组成关键点描述子常用来形成原始数据的表示
...