<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[风影的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/qq_41648043</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; qq_41648043]]></copyright><item><title><![CDATA[js使用xlsx生成二进制文件用于上传（不下载）]]></title><link>https://blog.csdn.net/qq_41648043/article/details/131617642</link><guid>https://blog.csdn.net/qq_41648043/article/details/131617642</guid><author>qq_41648043</author><pubDate>Sat, 08 Jul 2023 23:10:03 +0800</pubDate><description><![CDATA[业务中经常会处理各种数据，本文介绍了前端通过 xlsx 库将数据转换为 excel 文件用于上传的实现。]]></description><category></category></item><item><title><![CDATA[antd Form.List内字段的关联校验]]></title><link>https://blog.csdn.net/qq_41648043/article/details/130039183</link><guid>https://blog.csdn.net/qq_41648043/article/details/130039183</guid><author>qq_41648043</author><pubDate>Sun, 09 Apr 2023 10:50:20 +0800</pubDate><description><![CDATA[近期碰到一个需求，需要一个列表式的表单提交，列表内每一项之间都存在关联校验。]]></description><category></category></item><item><title><![CDATA[windows下node.js通过N-API调用c++函数]]></title><link>https://blog.csdn.net/qq_41648043/article/details/128261909</link><guid>https://blog.csdn.net/qq_41648043/article/details/128261909</guid><author>qq_41648043</author><pubDate>Sat, 10 Dec 2022 12:57:33 +0800</pubDate><description><![CDATA[node.js通过N-API调用c++函数]]></description><category></category></item><item><title><![CDATA[go get -u sourcegraph.com/sourcegraph/appdash出错]]></title><link>https://blog.csdn.net/qq_41648043/article/details/118614505</link><guid>https://blog.csdn.net/qq_41648043/article/details/118614505</guid><author>qq_41648043</author><pubDate>Fri, 09 Jul 2021 20:55:57 +0800</pubDate><description><![CDATA[今天安装go的appdash包出错：
go get sourcegraph.com/sourcegraph/appdash/cmd/...: unrecognized import path "sourcegraph.com/sourcegraph/appdash/cmd": reading https://sourcegraph.com/sourcegraph/appdash/cmd?go-get=1: 503 Service Unavailable

解决办法：
go get -u github.com]]></description><category></category></item><item><title><![CDATA[ubuntu安装配置Nginx]]></title><link>https://blog.csdn.net/qq_41648043/article/details/117925278</link><guid>https://blog.csdn.net/qq_41648043/article/details/117925278</guid><author>qq_41648043</author><pubDate>Tue, 15 Jun 2021 15:43:06 +0800</pubDate><description><![CDATA[Nginx下载
Nginx官网下载页面

下载其中的Stable version，我这里是nginx-1.20.1
安装依赖库
$ sudo apt install libpcre3 libpcre3-dev zlib1g-dev openssl libssl-dev -y

解压源码
解压源码到目录~/Nginx下面，目录可以自己指定
进入源码目录，运行configure文件，这是Nginx软件的自动脚本程序，它会检查环境，根据环境检测结果生成C代码，并生成编译的Makefile文件
$ cd ./Ngi]]></description><category></category></item><item><title><![CDATA[Linux(Ubuntu)下配置go开发环境]]></title><link>https://blog.csdn.net/qq_41648043/article/details/117782776</link><guid>https://blog.csdn.net/qq_41648043/article/details/117782776</guid><author>qq_41648043</author><pubDate>Thu, 10 Jun 2021 16:00:00 +0800</pubDate><description><![CDATA[go下载
1、其官网： https://golang.org/dl/
2、google官网： https://golang.google.cn/dl/
推荐使用第二个网址
go安装
解压压缩包到/usr/local目录下
sudo tar -C /usr/local -xzf go1.14.3.linux-amd64.tar.gz

go语言环境变量配置
sudo vim ~/.profile

在文件后面添加
export GOPATH=$HOME/gopath
export GOROOT=/usr/lo]]></description><category></category></item><item><title><![CDATA[Windows10配置go开发环境（基于VSCode）]]></title><link>https://blog.csdn.net/qq_41648043/article/details/116270933</link><guid>https://blog.csdn.net/qq_41648043/article/details/116270933</guid><author>qq_41648043</author><pubDate>Thu, 29 Apr 2021 16:10:19 +0800</pubDate><description><![CDATA[go下载
1、其官网：  https://golang.org/dl/
2、google官网： https://golang.google.cn/dl/
推荐使用第二个网址
安装Go
双击安装包，一路next下去就可以了。
安装成功后，使用go version可以查看go版本，确定是否安装成功。
环境变量配置
1、go的工作路径，即你一般的代码存放路径gopath

2、path变量，在path中添加如下两个路径，第一个是gopath下的bin目录，第二个是你go的安装路径下的bin目录

备注：
一般安装]]></description><category></category></item><item><title><![CDATA[c++中cv::Mat按行合并或按列合并]]></title><link>https://blog.csdn.net/qq_41648043/article/details/114577888</link><guid>https://blog.csdn.net/qq_41648043/article/details/114577888</guid><author>qq_41648043</author><pubDate>Tue, 09 Mar 2021 11:01:23 +0800</pubDate><description><![CDATA[opencv2.4.9的c++接口中并没有多个Mat矩阵合并成一个Mat的矩阵的接口。因此需要自己实现。
// 按列合并 A: m*n, B: m*n1, result: m*(n+n1)
cv::Mat mergeCols(cv::Mat A, cv::Mat B) {
	assert(A.rows == B.rows &amp;&amp; A.type() == B.type());
	int totalCols = A.cols + B.cols;
	cv::Mat mergeD(A.rows, to]]></description><category></category></item><item><title><![CDATA[ubuntu中screen的安装与简单使用]]></title><link>https://blog.csdn.net/qq_41648043/article/details/109512804</link><guid>https://blog.csdn.net/qq_41648043/article/details/109512804</guid><author>qq_41648043</author><pubDate>Thu, 05 Nov 2020 15:23:36 +0800</pubDate><description><![CDATA[安装
命令行输入下面的命令检查是否安装，没有会提示程序"screen"尚未安装。
screen -ls

未安装则输入如下命令安装
sudo apt install screen

使用
创建窗口
screen -S name

退出当前窗口
ctrl +a d
查看已创建窗口
screen -ls

关闭窗口
ctrl+d
进入名为name的窗口
screen -r name

screen窗口下的Python注意事项
screen下即使你进入了python3的虚拟环境，python命令依然会以系统自带的]]></description><category></category></item><item><title><![CDATA[python logging模块常用方法]]></title><link>https://blog.csdn.net/qq_41648043/article/details/109464115</link><guid>https://blog.csdn.net/qq_41648043/article/details/109464115</guid><author>qq_41648043</author><pubDate>Tue, 03 Nov 2020 11:17:38 +0800</pubDate><description><![CDATA[当需要大量打印日志或者保存日志的时候，print就略显臃肿，所以在python中经常使用logging模块来记录我们想要的日志信息。
logging模块日志级别
critical&gt;error&gt;warning&gt;info&gt;debug

我们可以通过setLevel函数来设置输出日志的最低级别，过滤部分不需要的信息，如下所示设置最低级别为debug，所以所有日志都会输出。默认生成的root logger的最低级别是logging.WARNING，不输出info和debug级别日志。
log]]></description><category></category></item><item><title><![CDATA[python函数参数的传递机制]]></title><link>https://blog.csdn.net/qq_41648043/article/details/109162599</link><guid>https://blog.csdn.net/qq_41648043/article/details/109162599</guid><author>qq_41648043</author><pubDate>Mon, 19 Oct 2020 16:28:51 +0800</pubDate><description><![CDATA[不可变对象的传递机制
在Python中，不可变对象是以值传递的方式传递的。即将实参的拷贝传入函数，传入参数与实参是不同的变量（常量）。我们在函数中怎么操作参数都对函数外的实参没有影响。
def swap(a, b):
	a, b = b, a
	print("a, b in swap function", a, b)
	return

if __name__=='__main__':
	a, b = 1, 2
	swap(a, b)
	print(a, b)

# a, b in swap function]]></description><category></category></item><item><title><![CDATA[pytorch使用torch.load加载模型出现错误Unexpected key(s) in state_dict]]></title><link>https://blog.csdn.net/qq_41648043/article/details/108412157</link><guid>https://blog.csdn.net/qq_41648043/article/details/108412157</guid><author>qq_41648043</author><pubDate>Fri, 04 Sep 2020 22:07:03 +0800</pubDate><description><![CDATA[记录错误积累经验

猛然来这么一大串错误信息让我有点震惊。
pytorch模型文件以key，value形式保存，现在模型所有key都对不上，有点奇怪。细看发现加载的模型相较于当前模型其key值前面多了“module."。
初步诊断
class Tester(object):

    TestParams = TestParams

    def __init__(self, model, test_params):
        assert isinstance(test_params, TestP]]></description><category></category></item><item><title><![CDATA[ASFF使用小记]]></title><link>https://blog.csdn.net/qq_41648043/article/details/108170407</link><guid>https://blog.csdn.net/qq_41648043/article/details/108170407</guid><author>qq_41648043</author><pubDate>Sat, 22 Aug 2020 17:04:34 +0800</pubDate><description><![CDATA[ASFF代码可以参考论文作者在github上的代码
论文地址
简要介绍
文章所提及的yolov3 baseline就不提了，简单介绍一下ASFF。
金字塔特征表示是解决目标检测中目标尺度变化的常用手段。 然而，不同特征尺度之间的不一致是基于特征金字塔的单镜头检测器的主要限制。 作者提出了一种新的和数据驱动的金字塔特征融合策略，称为自适应空间特征融合(ASFF)。 它学习了空间滤波冲突信息以抑制不一致性的方法，从而提高了特征的尺度不变性，并几乎没有引入推理开销。
三特征层ASFF结构：

核心思想是通过学习自]]></description><category></category></item><item><title><![CDATA[Canny算法实现车道线检测]]></title><link>https://blog.csdn.net/qq_41648043/article/details/104856364</link><guid>https://blog.csdn.net/qq_41648043/article/details/104856364</guid><author>qq_41648043</author><pubDate>Sun, 15 Mar 2020 09:24:18 +0800</pubDate><description><![CDATA[算法基于Python3.6实现
Python库

opencv-python
matplotlib
numpy

此篇仅实现图片车道线检测，下图是测试结果。

详细流程

输入图片并将其转换为灰度图
通过高斯滤波平滑图片去噪
使用Canny算法检测边缘
提取感兴趣候选区域
霍夫变换，直线检测
直线拟合得到车道线

图像处理
Candy算法介绍：https://blog.csdn.net/sc944...]]></description><category></category></item><item><title><![CDATA[nvidia深度学习加速库apex简单介绍]]></title><link>https://blog.csdn.net/qq_41648043/article/details/103702065</link><guid>https://blog.csdn.net/qq_41648043/article/details/103702065</guid><author>qq_41648043</author><pubDate>Wed, 25 Dec 2019 17:24:36 +0800</pubDate><description><![CDATA[介绍地址：https://docs.nvidia.com/deeplearning/sdk/mixed-precision-training/index.html
本人英文水平有限，有误请指正。
使用理由
使用精度低于32位浮点的数值格式有许多好处。首先，它们需要更少的内存，从而能够训练和部署更大的神经网络。其次，它们需要较少的内存带宽，从而加快数据传输操作。第三，数学运算在降低精度方面运行得更快...]]></description><category></category></item><item><title><![CDATA[python3 IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`)]]></title><link>https://blog.csdn.net/qq_41648043/article/details/103605092</link><guid>https://blog.csdn.net/qq_41648043/article/details/103605092</guid><author>qq_41648043</author><pubDate>Wed, 18 Dec 2019 21:34:21 +0800</pubDate><description><![CDATA[出现这个错误是因为需要整形（int）而没有输入整形数。可以尝试加强制类型转换，即int(a) # a为输入
常见错误
li = [1, 2, 3, 4, 5]
a = 10.0
b = 5
# li[a // b] = 9  # 错误用法，会报错
# 因为当a或b有一个为float时，整除算法得到的结果也为float
type(a // b)  # &lt;class 'float'&gt;
li...]]></description><category></category></item><item><title><![CDATA[C++实现修改/删除文件特定行]]></title><link>https://blog.csdn.net/qq_41648043/article/details/102998143</link><guid>https://blog.csdn.net/qq_41648043/article/details/102998143</guid><author>qq_41648043</author><pubDate>Sun, 10 Nov 2019 16:06:52 +0800</pubDate><description><![CDATA[#include&lt;sstream&gt;
#include&lt;string&gt;
#include&lt;fstream&gt;
using namespace std;

// 根据文件行第一个词（即名字）来删除，可修改为根据行号或其他
void delLine(string file_name, string name) {
	ifstream in(file_name);  //...]]></description><category></category></item><item><title><![CDATA[voc格式数据集转coco格式]]></title><link>https://blog.csdn.net/qq_41648043/article/details/102905218</link><guid>https://blog.csdn.net/qq_41648043/article/details/102905218</guid><author>qq_41648043</author><pubDate>Mon, 04 Nov 2019 21:15:12 +0800</pubDate><description><![CDATA[voc格式和coco格式在目标检测领域是用的比较多的。所以记录一下我将voc格式的数据集转coco格式的过程。
分离训练集和测试集
由于voc格式的数据集中，训练集和测试集的注释文件放在一个文件夹下，所以我需要先将其分离。
# Written by GX
# if you want to use it to copy some file from one directory to the othe...]]></description><category></category></item><item><title><![CDATA[Python str.split()细节小记]]></title><link>https://blog.csdn.net/qq_41648043/article/details/101097873</link><guid>https://blog.csdn.net/qq_41648043/article/details/101097873</guid><author>qq_41648043</author><pubDate>Sat, 21 Sep 2019 10:05:47 +0800</pubDate><description><![CDATA[str.split()是Python中用来分割字符串的函数。其函数原型如下：
str.split(str="", num=string.count(str)).

其中，str是分割符，num是分割次数（默认-1）。
其分割符默认为空格是很多教程上的说法，但其实不完全准确。
s = ' '
s.split()  # 默认分割符
s.split(' ')  # 空格为分割符

按默认分割符为空格的说...]]></description><category></category></item><item><title><![CDATA[numpy库：numpy.asarray()与numpy.array()区别小记]]></title><link>https://blog.csdn.net/qq_41648043/article/details/94006313</link><guid>https://blog.csdn.net/qq_41648043/article/details/94006313</guid><author>qq_41648043</author><pubDate>Fri, 28 Jun 2019 15:41:17 +0800</pubDate><description><![CDATA[numpy.asarray(a, dtype=None, order=None)
'''
a : 输入，任何可以转换成array形式的数据，如列表，元组等
dtype : 输出数据类型，默认继承输入数据类型（可选参数）
order : {'C', 'F'}，使用行主（'C'）或列主（'F'）内存表示形式，默认为'C'。（可选参数）
return : ndarray

numpy.array()的详...]]></description><category></category></item></channel></rss>