自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (1)
  • 收藏
  • 关注

原创 红外成像概述

红外成像概述1 红外线红外线(Infrared,简称IR)是波长介乎微波与可见光之间的电磁波,其波长在760奈米(nm)至1毫米(mm)之间,是波长比红光长的非可见光,对应频率约是在430 THz到300 GHz的范围内。室温下物体所发出的热辐射多都在此波段。1.1 一般使用者的分类是:近红外线(NIR, IR-A DIN):波长在 0.75 - 1.4 微米,以水的吸收来定...

2018-06-17 02:22:34 19521 5

转载 了解FFT和信号加窗

0 概览学习信号时域和频域、快速傅立叶变换(FFT)、加窗,以及如何通过这些操作来加深对信号的认识。1. 理解时域、频域、FFT傅立叶变换有助于理解常见的信号,以及如何辨别信号中的错误。 尽管傅立叶变换是一个复杂的数学函数,但是通过一个测量信号来理解傅立叶变换的概念并不复杂。 从根本上说,傅立叶变换将一个信号分解为不同幅值和频率的正弦波。 我们继续来分析这句话的意义所在。 所有信...

2018-06-01 00:47:51 19548 5

原创 图像边缘Canny算子提取

图像边缘Canny算子提取Blog: https://blog.csdn.net/AnimateX Email: [email protected] 本次项目中我觉得最有意思的部分就是梯度计算和边缘提取,如何提取更精细更准确的边缘则是最终的目的!1 边缘检测1.1 边缘定义边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中...

2018-04-18 00:14:42 9383

原创 红外非均匀性校正算法总结

红外校正算法总结Blog: https://blog.csdn.net/AnimateX Email: [email protected] 1 为什么要使用校正算法在军用、安防、道路检测和工业产品检测领域,红外成像系统的使用越来越广泛,但是因为材料和工艺的原因,焦平面探测单元的响应率很难做到一致,这就会造成对着均匀辐射目标最后探测器给出的响应电压不一样,带来的直接后果就是IRF...

2018-04-17 10:20:35 18999 11

原创 [MATLAB]平台直方图算法MATLAB实现

MATLAB验证FPGA平台直方图的实现Blog: https://blog.csdn.net/AnimateX Email: [email protected] 1 直方图在统计学中,直方图(英语:Histogram)是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。2 归一化直方图把直方图上每...

2018-04-10 23:03:43 2935

原创 [PyQt] Pycharm 配置 PyQt 开发环境

pycharm 配置pyqt5 external tool

2022-09-29 15:41:08 1074 2

原创 [valgrind] 安装与使用

valgrind 安装与使用

2022-07-28 17:54:35 2144

原创 C99 designator ‘name’ outside aggregate initializer

C99 designator ‘xxx’ outside aggregate initializer

2022-07-14 09:34:56 1702 1

原创 彻底卸载VSC

完整卸载vscode,包含插件和个人信息

2022-06-02 10:21:05 1134

原创 CMD打开闪退问题修复

cmd闪退修复VScode remote ssh 连接失败

2022-06-02 10:16:54 1514 1

原创 Source Code Pro l l 显示异常修复

VSC 中等宽字体显示 l l异常修复"editor.fontLigatures": "'ccmp' off",

2022-02-21 15:28:28 198 1

原创 PyTorch 深度学习实践-06-[Logistic Regression]

Date: 2021-12-27Repositity: Gitee本节引出分类问题,使用模型为Logistic regression。使用数据集为:MNIST手写数字数据集。0. MNIST Dataset关于MNIST数据集有:训练集大小:60000张手写样本;测试集大小:10000张手些样本;共计10个类别:{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}因此我们需要区分出来 y∈{0, 1, 2, 3, 4, 5,6,

2021-12-28 07:54:49 962

原创 PyTorch 深度学习实践-05-[Linear Regression with PyTorch]

Date: 2021-12-20Repositity: Gitee0. 回顾前述模型为: y^=x∗ω+b\hat{y} = x * \omega + by^​=x∗ω+b ,损失函数为MSE: loss=(x∗ω−y)2loss = (x*\omega - y)^2loss=(x∗ω−y)2 ,优化器为梯度下降GD。for epoch in range(100): # Use Tensor: x_data, y_dta for x, y in zip(x_data, y_da.

2021-12-26 21:21:38 828 2

原创 PyTorch 深度学习实践-04-[Back Propagation]

Date: 2021-12-20Repositity: Gitee0. 前言Reference: WIKI反向传播(英语:Back Propagation,缩写为BP)是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会回馈给最佳化方法,用来更新权值以最小化损失函数。反向传播要求对每个输入值得到已知输出,来计算损失函数梯度。因此,它通常被认为是一种监督式学习方法,虽然它也用在一些无监督.

2021-12-22 00:01:41 767

原创 Pytorch深度学习实践-03-[Gradient Descent]

梯度下降

2021-12-19 18:06:50 678

原创 Pytorch 深度学习实践-02-[Linear Model]

Date: 2021-12-17Repositity: Gitee0. 前言通常深度学习模型的训练流程可以简单分为以下4个部分:准备数据集(包含预处理)选择或设计模型(包含loss和优化器)训练(找到最佳的模型参数)推理(部署)接下来从基础的线性模型入手展开。1. 数据集注意事项这里以学习时间和成绩作为样本,考虑篇幅这里仅用文字描述。""" Dataset """# hours[1, 2, 3, 4]# points[2, 4, 6, ?]如上所示,这里给出数据集.

2021-12-18 20:14:50 1060

原创 Ubuntu 查看CPU信息

# see all cpu-core infocat /proc/cpuinfo# see cpu nummore /proc/cpuinfo | grep "physical id" | uniq | wc -lcat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l# see core nummore /proc/cpuinfo | grep "physical id" | grep "0" | wc -lcat /pro

2021-12-10 14:49:07 3218

原创 loss曲线本地动态显示并保存成gif

import osimport torchimport imageioimport numpy as npimport matplotlib.pyplot as pltfrom tqdm import tqdmfrom natsort import natsortedVector = [torch.Tensor, torch.Tensor]def load_diabetes_data(csv_file_path: str, delim: str, data_type=np.float3

2021-12-09 21:52:35 1286

原创 VSCode RemoteSSH 过程试图写入的管道不存在问题 解决

[email protected]: Permission denied (publickey,password). 过程试图写入的管道不存在问题解决然后我依次做了以下行为,当然初最后一项都是没有用的!1. 修改系统OpenSSH Path屏蔽win下的OpenSSH路径,使用Git bash的Openssh.exe,对应修改环境变量 C:\Program Files\Git\usr\bin搞定后测试,没屌用。2. 清理known_hosts对应IP内容清理目标服务器对应的known_h

2021-12-01 16:34:27 9378 4

原创 Python 数据结构之字典

Python-dictionary[Reference][1] https://docs.python.org/3/library/stdtypes.html#typesmapping1. dict 格式和特性A mapping object maps hashable values to arbitrary objects. Mappings are mutable objects. There is currently only one standard mapping type, the

2021-10-07 11:04:36 225

原创 PyTorch TORCH.AS_STRIDED

torch.as_strided(input, size, stride, storage_offset=0)→ Tensor1. 官方文档Create a view of an existing torch.Tensor input with specified size, stride and storage_offset.parametersinput (Tensor) – the input tensor.size (tuple or ints) – the shape of t.

2021-10-03 17:18:26 517

原创 Pytorch torch.sparse_coo_tensor()

Pytorch 构造稀疏 Tensortorch.sparse_coo_tensor(indices, values, size=None, *, dtype=None, device=None, requires_grad=False)Constructs a sparse tensor in COO(rdinate) format with specified values at the given indices.T.

2021-09-27 17:03:39 4426

原创 python map与reduce

函数式编程之map、reduce1 定义map(function, iterable, ...):返回一个迭代器,该迭代器将函数应用于可迭代的每个项目,产生结果。 如果传递了额外的可迭代参数,则函数必须采用多参数且并行应用于所有可迭代项中的项目。示例:>>> list(map(lambda x: x + 2, list(range(10))))[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]functools.reduce(function, iterab.

2021-09-22 21:13:26 119

原创 C语言 字符串数组笔记

温故而知新,实则菜狗重新看下1. 引言字符串数组通常有两类,一种为长度固定了(下图左);一种长度不固定(下图右)。如下图所示:2. 使用这里将显示月份的switch-case替换成字符串数组。#include <stdio.h>int main(void){ const char *month_name[] = { "January", "February", "March", "April", .

2021-07-15 23:29:34 161 2

原创 QGraphicsPixmapItem setOffset踩坑说明

背景:在做图像关键点标注工具时,希望同一scene重载文件夹时,图元回归中心(拖拽缩放导致的偏移)。解决:获取始末坐标;计算x方向和y方向的坐标偏移,然后再重载图元时,反向设置图元偏移即可。1. bug说明图元在第一次重载,设置Offset后,画面显示回归正常。但是此时我去跟踪图元的鼠标事件的坐标变化时发现如下情况:初始,我选择拖动位置为图元的原点(左上角),起始状态均为0.0然后,拖动图元结束,拖动变化为:x: 271.0, y: 99.0然后,重新载入其他图片文件夹,并设置Offset.

2021-07-15 11:00:13 858

原创 PyQt 跨类之间的数据如何动态更新

PyQt 跨类之间的数据通信问题亦或同步问题0. 引言针对上述问题,最好的办法即:Signal/Slot,但是有时可能无法正常使用,比如在QGraphics Class中的多类之间(scene与item,item与view等)的鼠标事件的坐标互传问题(直接使用转换函数即可,这里仅仅是举例),其class并不支持信号与槽,这时就比较麻烦了。1. QTimerQTimer作为定时器,我让其固定在多少ms后对子类实体的数据更新到父类即可,简单粗暴。 def __init__(self): .

2021-07-07 16:39:24 338

原创 PyQt5 关闭视图(QGraphicsView)滚动条

PyQt5中的QGraphics View小于场景Scene时,会出现ScrollBar滚动条。在某些场景下我们是不需要滚动条出现,比如:带有move功能的工具时,仅仅需要移动scene中的Item即可。1. 关闭滚动条的显示首先,掩耳盗铃。针对上述问题,滚动条依然和鼠标滚轮相关,但是它看不见了,大不了不用滚轮。# 设置滚动步进,无用# self.view.horizontalScrollBar().setSingleStep(0)# self.view.verticalScrollBar(.

2021-07-05 22:49:02 4034 5

原创 PyQt5 QFileDialog迟滞问题临时解决

PyQt5 QFileDialog迟滞问题临时解决date: 2021-06-11问题说明获取图像所在文件夹,然后返回路径将其更新到textBrowser中。测试发现win10下会选择完路径后很久才返回文件夹地址,但该现象出现在我更新系统后,不知原因。img_dir_path = QFileDialog.getExistingDirectory(self, caption='Select Image

2021-06-11 22:53:36 2058 5

原创 图像分割之区域生长算法

时间:2020-12-071. 流程简述算法流程:选取种子点p(x0,y0),用堆栈表示种子区域,将种子点push到种子堆栈中;将种子堆栈中第一个种子点pop出堆栈,并以该点为中心,遍历该中心8邻域像素;判断遍历像素点是否已经在种子区域中3.1 是,continue;3.2 否,检查点p(x,y)和种子区域的均值refAvg灰度差是否满足阈值;若满足,将p(x, y) push到堆栈中;若不满足,continue;计算新的种子区域的均值refAvg,找出离上一个种子"最近"的seed,.

2020-12-14 11:14:46 1838

原创 matlab 那些能提高工作效率的命令

时间:2020-12-10作者:baron目的:个人随笔,备忘。大型工程每次测试遇到错误很难定位和分析,能不能保留错误前的数据信息?命令如下dbstop if error批量注释ctrl + R // commentctrl + T // uncomment命令说明,直接打开官方说明页%% docdoc imfilter多信号作图时,轴同步%% linkaxes% E.g...eg(1) = subplot(2, 1, 1);plot(time, s.

2020-12-10 20:45:53 175 1

原创 大津算法(Nobuyuki Otsu method)

时间:2020-12-02目的:掌握图像分割的基础算法1. 算法原理图像分割,顾名思义将图像中的目标和背景进行区分。通常我们使用固定的阈值进行二值化,但是阈值如何迭代筛选。这个过程可不可以使用程序帮我们迭代呢?迭代条件又是什么呢?大津算法,其根据直方图(假定前景和背景在直方图上呈现出两峰的情况),计算能将两类分开的最佳阈值(前景和背景类间方差最大),然后根据求得的最佳阈值对图像进行全局二值化。大津算法满足我们前述的疑问,只要找到一个直方图基本符合双峰情况,且存在满足类间方差最大的灰阶即可。方.

2020-12-02 20:36:14 2467

原创 VSCode 指定列(块)选择

最近清洗log文件时,筛选代码不太方便,直接选择出来岂不美哉。在此记录一下。1. alt + shift + 鼠标左键点选2. 按住鼠标滚轮滑动选择即可效果如下图所示...

2020-04-04 15:27:14 6405

原创 图像标注xml文件 matlab解析

根据自己的标注文件,使用关键的几个函数即可:xmlread(): 读入xml文件getElementsByTagName(): 获取关键字下的信息getElementsByTagName().item(0).getTextContent(): 提取第一个值信息,并转换成字符函数参考如下:function [width, height, xmin, ymin, xmax, ymax...

2020-01-15 15:04:35 1094

原创 MATLAB IoU计算函数

原理简单,这里不进行描述。function [IoU, area] = compute_IoU(region_a, region_b)%COMPUTE_IOU Is compute the two region overlap area.% % ************************% * *% * (...

2020-01-15 14:57:38 2783

原创 [论文笔记] QR Code Patterns Localization based on Hu Invariant Moments

QR Code Patterns Localization based on Hu Invariant Moments非常规那一套定制特征 + boost的机器学习方法01 算法效果精度提高,但是没给对比算法,以及指标的量化;速度加强,持怀疑态度。02 创新点其流程简述如下:图像容易模糊,怎么预处理?作者使用单色滤波器来解决,其在频域操作需要使用FFT,其目的是方便ROI分...

2019-12-18 17:56:07 223

原创 RCNN学习笔记

RCNN学习笔记R. Girshick, J. Donahue, T. Darrell, and J. Malik, “Rich feature hierarchies for accurate object detection and semantic segmentation,” in Proceedings of the IEEE conference on computer visio...

2019-12-18 14:15:00 402

原创 [译] RCNN:Rich feature hierarchies for accurate object detection and semantic segmentation

RCNN 翻译

2019-12-17 21:15:38 219

原创 [论文笔记] Improved QR Code Localization Using Boosted Cascade of Weak Classifiers

[论文笔记] Improved QR Code Localization Using Boosted Cascade of Weak Classifiers时间:2015年作者:Peter Bodnar and Laszlo G. Nyul1 创新点大创新点:无;小创新点:给出了一个平面旋转的投射变换的角度经验值,加速上使用了RLE;2 算法框架整体框架:ViolaJones检测...

2019-12-16 21:00:19 178

原创 深入理解GCC 编译

虽然平时经常用gcc来开发,但从没有细想过其内部怎么执行,其具体的流程又是如何。由于主力开发语言为C/C++,加上最近看C专家编程有感,决定写此博客,来加深自己的记忆。1 编译流程通常GCC的编译流程为:预编译-预处理源文件,生成.i文件:去掉注释、宏替换、增加行号信息等步骤;编译-编译预处理后的.i文件,生成.s汇编代码:代码语法分析、代码优化和汇总符号等步骤汇编-将汇编代码编译...

2019-12-08 15:21:24 517

原创 linux下 matlab批量重命名文件

shell 大神请忽略,windows同样适用。菜鸡整理数据集时,日常记录clc; clear;path_in = "./standard_Bakground/";path_out = "./standard/";files = dir(path_in);for i = 3 : length(files) old_name = files(i).name; n...

2019-11-19 10:23:05 384

canny 边缘检测 MATLAB源码(非MATLAB官方代码)

VERSION 2006/08/24 // bug fixed in ascii-file display CREATED BY: M.B. Wieling and N. Petkov, Groningen University, Department of Computer Science, Intelligent Systems

2018-04-18

空空如也

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

TA关注的人

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