自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Konata的博客

wish you happy everyday

  • 博客(94)
  • 收藏
  • 关注

原创 从函数空间的角度重新理解傅里叶变换

深刻理解傅里叶

2023-03-24 20:23:54 1366 2

原创 从虚拟内存的角度理解一段汇编

文章由个人翻译和整理自Holbert School的系列文章,链接位于文末虚拟内存布局关于进程在虚拟内存的布局,一张经典的解释图是:在一段完整的汇编程序中,我们首先要关注的是其实是图中的stack部分,它是一个地址向低位生长的栈理解一段简单的汇编想要分析汇编程序,有一个很好用的网站是 https://godbolt.org/,它能把程序方便地翻译成汇编网站中提供的示例是:// Type your code here, or load an example.int square(int .

2022-04-06 16:46:04 1875

原创 一种由视频和音频共同驱动的说话人脸合成方法简介

最近做作业看到了一篇挺有意思的文章《Pose-Controllable Talking Face Generation by Implicitly Modularized Audio-Visual Representation》。文章开发了一个可以说话人脸生成工具,可以由视频和音频共同驱动Zhou, H., Sun, Y., Wu, W., Loy, C. C., Wang, X., & Liu, Z. (2021). Pose-controllable talking face generat

2022-03-31 22:08:27 5504 2

原创 人脸识别(Face Recognition)简要综述

文章目录人脸识别在计算机视觉中的位置早期方法Face Recognition with Local Binary Patterns(【ECCV 2004】)LBP的feature map计算方法:除此以外LBP算子还有改进版本:LBP的特点从LBP的得到的“图片”到“向量”数据集一些较新的文章FaceNet(【CVPR 2015】)Finding Tiny Faces with GAN(【CVPR 2018】)Masked Face Recgonition with latent part(【ACM

2022-03-28 21:16:53 14848

原创 bash的配置文件读取

bash配置的读取login shell与non-login shell的简单区分: 输了密码的就是login shell,否则就不是$shopt login_shell能检查shell类型login shell会读取很多配置文件在我使用的Ubuntu 20.04中,vim /etc/profile并查看,可以发现其调用了/etc/bash.bashrc配置;而/etc/bash.bashrc又会调用/etc/profile.d/*.sh;最后调用~/.profile,然后调用~/.bashrc

2022-03-24 18:47:21 605

原创 OpenGL中的基本概念--着色器、光栅化、渲染管线

基本概念在 OpenGL 中,设置好顶点数据,设置好着色器,调用 drawcall 函数,3D 图形就被绘制出来了。那么在这背后,GPU 做了什么工作呢?其实,从输入的顶点 3D 信息,到输出每个像素点的颜色信息,中间经过了很多步操作。这些操作按照一定的顺序构成了一条图形流水线(Graphics Pipeline),或者叫渲染管线。每个步骤的输入都依赖于前一步骤输出的结果。其中的步骤包括顶点处理(vertex processing)、图元装配(triangle assembly)、光栅化(raster

2022-03-16 16:20:22 1535

原创 文本检测(Text Detection)简要综述

文本检测(Text Detection)是计算机视觉领域的经典问题,该技术旨在寻求一种可靠方法作为文本识别技术的前端,是目标检测(Object Detection)领域的一个子问题检测(Detection)在计算机视觉中的位置计算机视觉有四大基本任务: 分割(classification)、定位(检测localization、detection)、语义分割(Semantic segmentation)、实例分割(Instance segmentation)这四个任务需要对图像的理解逐步深入。给定一

2022-03-15 15:02:10 9623

原创 矩阵分析(2)--正规矩阵、正交矩阵

正规矩阵正规矩阵是很重要也很特殊的一类矩阵,因为它能使得谱定理成立,也一定能够酉相似对角化在数学中,正规矩阵 (英语: normal matrix) A\mathbf{A}A 是与自己的共轭转置满 足交换律的实系数方块矩阵,也就是说, A\mathbf{A}A 满足A∗A=AA∗\mathbf{A}^{*} \mathbf{A}=\mathbf{A} \mathbf{A}^{*}A∗A=AA∗其中 A∗\mathbf{A}^{*}A∗ 是 A\mathbf{A}A 的共轭转置。如果 A\mat

2022-02-02 23:23:56 3348

原创 矩阵分析(1)--一些基本概念

线性变换与矩阵一个线性变换与一个矩阵相对应例如,设有线性空间V1和V2,T为V1到V2上的某个线性变换,则有一个矩阵A与变换T对应如何确定这个线性变换对应的矩阵?方法如下:设{ei{e_i}ei​}为V1的n个基设{fjf_jfj​}为V2的m个基T:V1⟶V2T: V_1\longrightarrow V_2T:V1​⟶V2​对每个eie_iei​进行线性变换即Te1=a11f1+a21f2+…+am1fmTe2=a12f1+a22f2+…+am2fm\begin{aligned}&a

2022-01-29 16:45:02 1892

原创 随机过程总结(5)--Markov过程与高斯过程

参考Markov过程高斯过程

2022-01-27 17:46:34 1218

原创 随机过程总结(4)--泊松过程

泊松过程因为状态离散,因而不再用相关函数来进行刻画,转而用概率进行刻画。其严格定义此处不赘述,很容易查到,概括如下泊松过程的条件对于一个记数过程N(t),满足下面四个条件时称之为泊松过程N(0)=0N(t)为独立增量过程N(t)为平稳增量过程N(t)有稀疏性,即在一个充分小的时间段Δt\Delta tΔt内,不可能记数两次对一个二项分布,它有参数n和参数p,当p很小而n很大时,二项分布会变成泊松分布。泊松分布的刻画是: 等待一个稀有事件的发生。从而对于泊松过程来说,"跳动"就是一个稀有

2022-01-27 17:31:47 2825

原创 随机过程总结(3)--一些非平稳过程

平稳过程与一些非平稳过程平稳过程常用的概念是宽平稳过程(WSS),宽平稳过程要求该过程的一阶矩和二阶矩不时变,即:E{x(t)}=mx(t)=mx(t+τ)∀τ∈R\mathbb{E}\{x(t)\}=m_{x}(t)=m_{x}(t+\tau) \forall \tau \in \mathbb{R}E{x(t)}=mx​(t)=mx​(t+τ)∀τ∈RE{x(t1)x(t2)}=Rx(t1,t2)=Rx(t1+τ,t2+τ)=Rx(t1−t2,0)∀τ∈R\mathbb{E}\left\{x\le

2022-01-25 22:24:26 1508

原创 随机过程总结(2)--相关分析和谱分析

这部分总结简单总结下随机过程的时域分析和谱分析相关函数的性质对称性: 这是因为内积有对称性RX(t,s)=RX(s,t)R_X(t,s)=R_X(s,t)RX​(t,s)=RX​(s,t)Cauchy-Schwarz不等式∣⟨u,v⟩∣2≤⟨u,u⟩⋅⟨v,v⟩|\langle\mathbf{u}, \mathbf{v}\rangle|^{2} \leq\langle\mathbf{u}, \mathbf{u}\rangle \cdot\langle\mathbf{v}, \mathb

2022-01-24 23:43:00 758

原创 随机过程总结(1)--一些基本概念

随机过程总结(1)–一些基本概念随即过程的定义直观定义随机过程是一组依赖于实参数t的随机变量,这个实参数可以取连续值也可以离散,记为{X(t),t∈R}\{ X(t) ,t\in \mathbb R \}{X(t),t∈R} 或{X(n),n∈N}\{X(n), n \in \mathbb N\}{X(n),n∈N}Remark:Remark:Remark:随机过程中的过程二字,暗示了这个参数t通常表明的是时间随机过程可以看作是一组随机变量(r.v.)由一种index串起来,这个index就是

2022-01-23 21:37:17 4122

原创 django架构简介

Django特性ORM。models层建立数据类与数据库中数据形成ORM映射关系MTV架构。与MVC架构有小小的区别,controller的功能被分化在了url dispatcher(urls.py文件)与views两个模块中目录结构Django把一个网站所有内容称作一个project,每个模块称作app例如如下目录结构中,项目名称mysite为一个project, 文件夹mysite/mysite称为项目的根配置文件,其中的文件mysite/mysite/urls.py提供了url的

2022-01-12 14:37:07 4002

原创 ohmyzsh安装

查看装了有哪些shellcat /etc/shells安装zshsudo apt-get install zshchsh -s /bin/zsh # 切换shell安装oh my zshsh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"切换主题vi ~/.zshrc然后就可以设置主题,常用的出题有agnoster、bira等,例

2021-12-12 16:21:33 678

原创 罚函数法总结

处理有约束的优化问题时,一种常见的处理方法是: 将约束条件作为惩罚项加到目标函数中。"惩罚"是一个很形象的称呼,意思是优化过程迭代到约束条件之外时给与惩罚,或者说负反馈。例如,我们在处理最小化函数值fff时,在f中增加一些项,这些项会使得迭代点在可行域之外时,增大函数f的值,这些项就起到了惩罚的作用这些约束条件可以是等式,也可以是不等式,又或者是两者都有。在处理等式约束时,常常使用外点罚函数法,意思是迭代点允许在可行域之外(其实非常自然,因为等式约束是一种"很严格"的约束,迭代不要限制地太紧了,不然都不

2021-11-10 14:35:01 6796

转载 matlab符号函数与对其的常用操作

matlab符号运算是一个强大的机制,可以帮助我们进行高数中的各种公式推演,例如极限、微分、积分、级数求和、泰勒展开、积分变换等符号函数求极限limit(F,x,a):求 F以x为变量在a处的极限limit(F,a):求 a处的极限,采用默认自变量,由 symvar() 给出limit(F):求0处的极限,采用默认自变量 ,由 symvar() 给出limit(F,x,a,flag):求左极限或右极限 ,flag 取值为 left 或 right,代表左右极限>> syms x

2021-10-23 21:27:24 2317

原创 牛顿法求极值

牛顿法求极值无约束优化算法可以分为线搜索类算法与信赖域类算法两类,他们都是对f(x)f(\bold x)f(x)在局部进行近似,前者用得更加普遍。而线搜索类算法根据搜索方向选择的不同可以分为梯度算法、牛顿算法、拟牛顿算法、拟牛顿算法等本文目的是介绍牛顿法。平常我们说牛顿法,一般指的是用牛顿法求方程根,因而先复习牛顿法求根的原理,然后扩展到用牛顿法求极值,再进一步扩展到多元函数牛顿法求极值1. 一元函数牛顿法求根复杂方程的根很难直接求得,最开始用牛顿法迭代来求方程的根。方法是给 一个初值 x1x_{1

2021-10-05 20:47:08 1344

原创 拉普拉斯算子的疑惑--拉普拉斯算子作用于矢量和定义Hessian矩阵时遇到的问题

拉普拉斯算子的疑惑国内许多工科教材在讲到有关拉普拉斯算子(Δ\DeltaΔ)与哈密顿算子(∇\nabla∇)的内容时含混不清,忽略了许多重要定义,使得一些进一步的推导难以理解现记录我发现的两个主要问题,并予以解答,希望可以帮助到学习国内教材时有相似疑惑的同学1. 拉普拉斯算子作用于矢量1.1 课本中的定义课本在介绍拉普拉斯算子时,一般会有如下定义:设f\displaystyle ff为二阶可微的实函数,那么有:Δf=∇2f=∇⋅∇f \Delta f = \nabla^2f = \nabla

2021-09-29 15:13:56 7542 7

原创 移植别人环境下的Android Studio项目,本地部环境遇到的坑总结

主要是项目在build过程中的一些问题build.gradle(Project目录下)换源个人配置如下ext { var = "1.8" var = var}// Top-level build file where you can add configuration options common to all sub-projects/modules.buildscript { repositories { maven{ url 'http://mave

2021-08-04 16:05:36 1768

原创 git补丁操作(git diff、git format-patch、git apply、git am)

一. 打补丁的两种方法Git 提供了两种补丁方案,一是用git diff生成的UNIX标准补丁.diff文件,二是git format-patch生成的Git专用.patch 文件。.patch文件带有记录文件改变的内容,也带有commit记录信息,每个commit对应一个patch文件。.diff文件只是记录文件改变的内容,不带有commit记录信息,多个commit可以合并成一个diff文件。所谓的commit信息,是类似如下格式的文本From commit-ID TIMEFrom: U

2021-07-24 15:09:42 1439

原创 git恢复以往仓库状态(git reflog、git cherry-pick)

在程序开发的过程中我们难免有搞错的时候。在项目中,如果因为我们个人的操作不当把整个代码仓库毁了就不好了,好在git的开发人员为我们想到了这一点,可以使用后悔药操作来将代码恢复git logit log 命令可以显示所有提交过的版本信息,也就是每个commit的信息。比较单一然后也可以使用git diff来查看commit之间的 差异git diff commit-id1 commit-id2git refloggit reflog顾名思义就是查看ref变化的log,而引起ref变化的操作

2021-07-22 00:27:32 1220 2

原创 Python中QThread、Thread、Processing的比较总结

最近在学习PyQt相关知识,碰到了其中的QThread类。于是查找学习了Python中Thread类与Processing类的基础知识1. Thread类// TODO2. Process类// TODO3. QThread类在程序设计中,有时候有一些模块需要较长时间执行,例如文件传输等。在一个GUI程序中,如果直接使用简单的信号-槽(即简单事件响应机制)机制完成这类模块,那么在执行该模块时整个程序会陷入无响应,直到执行完成后才会恢复正常。解决这种问题的好办法是引入多线程机制基本用法Q

2021-07-18 14:40:25 5321

原创 git拉下远程主分支后,新建一个新分支,在这个分支上开发。在过程中主分支因多人开发变了,应如何合并到远端主分支

情景:我从master上拉了一个分支后,在本地创建了一个新分支dev,然后在dev上开发。但是在开发的过程中主分支也变化了,然后我就又把主分支拉下来了(这里正确搞法是直接git pull,但我搞错了,新建了一个文件夹然后把最新的的主分支拉下来,然后在这个新分支上开发),自然,这个分支也叫master,然后我想把这个master分支上开发好的内容上传到dev分支上,我应该怎么做?git add -Agit commit -m "*******"git push -u origin dev1、切.

2021-07-15 15:09:07 707

翻译 adb shell dumpsys简单介绍

以下内容来自stack overflow上的一个提问,因为个人英语水平所限,就不翻译了,将主要内容整理如下,方便查阅。简而言之,介绍了如下内容dumpsys可以用来检测系统的服务信息列出dumpsys有哪些服务模块(命令)给出几个简单示例文章目录What's dumpsys and what are its benefitWhat information can we retrieve from dumpsys shell command and how we can use itSome .

2021-07-12 14:03:12 1075

原创 adb shell monkey提示can‘t create log.txt, Read-only file system

问题在使用monkey调试安卓程序时shell提示错误,问题如下命令monkey -p com.baidu.BaiduMap -v -v -v --ignore-crashes --throttle 200 --pct-touch 50 5 1>D:\\info.txt 2>D:\error.txt提示/system/bin/sh: can't create D:\info.txt: Read-only file system分析与更正原因:无法写入文件的原因是设备shell只

2021-07-03 14:30:32 2369

原创 adb及其基本命令

adb即Android Device Bridge,可用于用于安卓控制或测试,现简单记录一部分常用命令pm即packages manager,在adb命令中常见下面命令中,我用$符号表示在设备shell中的命令# 查看设备adb devices# 进入指定设备的shell,如果只连接一个设备则直接进入adb shell# 查看已安装的列表(在设备shell中)$ pm list packages# 根据关键词在包管理器中查找$ pm list packages | grep ten

2021-07-02 18:13:03 295

原创 Python logging的使用

1. 简单配置使用logging.basicConfig进行配置#!/usr/local/bin/python# -*- coding:utf-8 -*-import logging # 通过下面的方式进行简单配置输出方式与日志级别logging.basicConfig(filename='logger.log', level=logging.INFO) logging.debug('debug message')logging.info('info message')logging.

2021-07-02 11:53:51 433

原创 git常用操作与在gitlab上进行MergeRequest(git rebase)

目标学习基本的git操作发现仓库的一些bug补充函数的注释完成代码提交实施2.1 配置• 安装并配置git,生成SSH keygit config --global user.name "***********"git config --global user.email "**********@qq.com"ssh-keygen -t rsa -C "**********@qq.com"cat ~/.ssh/id_rsa.pub然后在gitlab上配置本机的 ssh key.

2021-06-26 22:13:19 9703

原创 python虚拟环境总结

学习资源来自https://www.bilibili.com/video/BV1V7411n7CM?p=1目录python环境结构虚拟环境的类型虚拟环境的创建保存和复制虚拟环境python环境结构包括如下内容如上图所示为Python的环境结构。打开安装位置的Python文件夹,可以看到上图所示的文件结构和一些其他文件。python.exe即Python解释器。site-packages为Python特有的一种包管理机制,包含一些常用包但又区别于标准库如上图,右边的两个部分为虚拟环境的目.

2021-06-13 16:50:06 299 2

原创 基于GAN的动漫头像生成安卓项目

下载链接: https://pan.baidu.com/s/1IhptdLKiV4y5VqJskPQ83w提取码: cedw

2021-03-25 00:59:15 636 3

原创 IIR与FIR的对比

1. FIRFIR(Finite Impulse Response)即有限冲击响应滤波器,也即系统的冲激响应参数h(n)h(n)h(n)与H(z)H(z)H(z)长度是有限的相应的,其系统函数的z域形式为H(z)=∑n=0n=N−1h(n)z−n H(z)=\sum_{n=0}^{n=N-1} h(n)z^{-n} H(z)=n=0∑n=N−1​h(n)z−n根据系统函数和梅森定理,可以画出其信号流图,没有反馈模块性质FIR的系统函数永远只有0极点,满足收敛域包括单位圆,也因此其永远稳定满足

2021-03-17 01:16:36 1792 2

原创 算法题--合并区间

题目以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [startistart_istarti​, endiend_iendi​] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。示例 1:输入:intervals = [[1,3],[2,6],[8,10],[15,18]]输出:[[1,6],[8,10],[15,18]]解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:

2021-02-04 12:11:26 374

原创 数据结构与算法--二叉搜索树的第k大结点

题目给定一棵二叉搜索树,请找出其中第k大的节点。示例 1:输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2输出: 4示例 2:输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 4 / 1输出: 4限制:1 ≤ k ≤ 二叉搜索树元素个数思路对于二叉搜索树,有这样一个性质:对其进行中序

2021-02-02 16:09:17 266

原创 数据结构与算法--最小栈

题目设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。push(x) —— 将元素 x 推入栈中。pop() —— 删除栈顶的元素。top() —— 获取栈顶元素。getMin() —— 检索栈中的最小元素。示例:输入:["MinStack","push","push","push","getMin","pop","top","getMin"][[],[-2],[0],[-3],[],[],[],[]]输出:[null,null,null,nul

2021-02-01 19:46:07 224

原创 对二叉树DFS\BFS的总结

DFS有递归与非递归两种常见形式,BFS则通常为非递归的本文使用TreeNode.h如下struct TreeNode { int val; TreeNode* left; TreeNode* right; TreeNode() : val(0), left(nullptr), right(nullptr) {} TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} TreeNode(int x, TreeNode* left,

2021-01-31 18:01:24 333

原创 数据结构与算法--对称的二叉树

题目请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3思路这个题乍一看和二叉树的镜像题很相似,受到该题的影响,很自然地想到这里似乎只要分别递归检查子树的左右孩子

2021-01-31 13:16:22 213

原创 数据结构与算法--二叉树的镜像

对查找资料的总结标准库中的二叉树?SGI STL库中并没有二叉树,可以看StackOverflow上的这个问题。但GNU中的tree.hh实现了树刷题时会提供一个TreeNode,通常定义如下struct TreeNode { int val; TreeNode* left; TreeNode* right; TreeNode() : val(0), left(nullptr), right(nullptr) {} TreeNode(int x) : val(x), left(null.

2021-01-30 23:05:33 253 1

原创 数据结构与算法--反转链表

题目定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL限制:0 <= 节点个数 <= 5000思路本题最简单的方法是用栈。但如果考虑到使空间复杂度最小,可以使用前后双指针法指针prev最开始指向nullptr,curr指向头指针head,prev始终指向curr的前一个结点使得两个指针不断同步右

2021-01-29 22:18:13 336

空空如也

空空如也

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

TA关注的人

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