命令行速查
virtualenvs虚拟环境配置
安装虚拟环境依赖
先安装虚拟环境的依赖库:
123sudo pip install virtualenvsudo pip install virtualenvwrapper(virtualenvwrapper-win
创建虚拟环境管理目录:
1mkdir ~/.virtualenvssudo vim ~/.bashrc#在.bashrc的末尾增加下面两行内容export WORKON_HOME=$HOME/.virtualenvs # 所有虚拟环境存储的目录source /usr/local/bin/virtualenvwrapper.sh #激活虚拟环境source ~/.bashrc #激活
创建虚拟环境
123456789>>>mkvirtualenv new_vir --python=python3#创建新的虚拟环境为new_vir# todo>>>mkvirtualenv -p /usr/bin/python3 new_vir #制定虚拟环境的python为local的python3> ...
c++move用法
1、区分左值与右值的区别
左值与右值的根本区别在于是否允许取地址&运算符获得对应的内存地址。
变量可以取地址,所以是左值,但是常量和临时对象等不可以取地址,所以是右值。
左值是表达式结束后依然存在的持久对象(代表一个在内存中占有确定位置的对象)。
右值是表达式结束时不再存在的临时对象(不在内存中占有确定位置的表达式)。
所有的具名变量或者对象都是左值,而右值不具名。
对表达式取地址,如果能,则为左值,否则为右值。
常见的右值:“abc",123等都是右值。
右值引用,可以延长右值的生命周期
123int&& i = 123;int&& j = std::move(i);int&& k = i;//编译不过,这里i是一个左值,右值引用只能引用右值
2、Move
用法1 转移所有权
将快要销毁的对象转移给其他变量,这样可以继续使用这个对象,而不必再创建一个一样的对象,省去了创建新的一样内容的对象,也就提高了性能。
1234567891011121314151617181920// move exampl ...
数据拟合方法
以拟合直线为例,分析总结几种方法,有最小二乘法、Ransac、Tukey、Huber。
image-20230701111935103
最小二乘法(Least Squares
Method)
一种常用的参数估计方法,用于拟合数据点集到一个数学模型。它的目标是找到最优参数,使得模型预测值与实际观测值之间的残差平方和最小化。
在直线拟合问题中,最小二乘法可以用于找到最优的斜率和截距,使得直线与数据点的残差平方和最小化。
最小二乘法的优点是简单直观,但对异常值敏感。 demo1
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253#include <iostream>#include <vector>#include <cmath>// 直线结构体,包含斜率和截距struct Line { double slope; double intercept;};// ...
c++使用pdb信息复现崩溃位置
c++使用pdb信息复现崩溃位置
条件:发布程序时保留对应版本的pdb文件
复现步骤:
1、拷贝崩溃产生的dmp文件
dmpfiles
2、使用vs2017打开dmp,这里能够大致看到崩溃信息
dmpfiles
3、在设置符号调试内,勾选Microsoft符号调试器与软甲同版本的pdb文件列表,且要加载排除模块外的所有模块,配置好后点击确认
dmpfiles
4、创建崩溃程序的同路径同版本程序,在右侧操作栏,点击使用仅限本机进行调试;
工程建立新分支回退到崩溃程序的相同版本(若不进行此操作,复现的崩溃位置不正确);
(首次加载符号需要从微软自动下载pdb文件,科学上网加快速度)等待后就可以看到崩溃位置源码与堆栈信息;
c++并行使用手册
opencv并行
使用cv::parallel_for_函数对目标函数进行并行加速
官方函数原型
12345inline void parallel_for_(const Range& range, std::function<void(const Range&)> functor, double nstripes=-1.){ parallel_for_(range, ParallelLoopBodyLambdaWrapper(functor), nstripes);}#endif
使用案例:求取0-1000的和与最大值
123456789101112131415161718std::atomic<int> _nSumValue = 0;std::atomic<int> _nMax = 0;cv::parallel_for_(cv::Range(0, 1000), [&](const cv::Range& range) { for (int i = range.sta ...
PC调用NVIDIA显卡相关设置
一、操作步骤
1、 移动依赖文件至<C:>
2、 安装显卡驱动
3、 解压视觉软件至<C:>
4、 设置页面文件大小与显卡高性能设置
二、设置页面文件大小
在自主训练软件下需要虚拟内存,需要进行以下设置。
1、 右击此电脑,点击高级系统设置;
2、 在弹出的系统属性中,选择高级,(性能)设置;
3、 在弹出的性能选项中,选择高级,点击(虚拟内存)更改;
4、
不勾选自动管理所有驱动器的分页大小,依次点击每个盘符,选择为系统管理的大小,并单击设置,最后点击确认。若提示电脑需要重启则重新启动。
三、安装显卡驱动,设置显卡高性能
要求系统在固定时间内实时响应,但是当前win10系统下,会自动根据负载调整CPU和GPU运行频率,导致算法执行时间波动非常大。
5、 点击win,搜索NVIDIA Control Panel
6、 通过预览调整图像设置 - 使用我的优先选择 - 侧重于 - 性能 -
应用,保存设置
7、 管理 3D
设置:将电源管理模式设置为最高性能优先,点击“应用”保存设置生效。
8、
验证方式:通过 ...
c++程序发布流程(VS&QT)
一、QT环境
打开终端Qt 5.11.1 64-bit for Desktop (MSVC 2017)或系统的cmd
切换到程序运行盘符:E,cd到要打包exe的目录下
执行命令 windeployqt XXX.exe,则会生成QT环境;
在程序运行目录下
二、其他环境
打开终端适用于 VS 2017 的 x64 本机工具命令提示
切换到程序目录,执行命令dumpbin /IMPORTS XXX.exe>output.txt导出依赖;
使用everything将查找到的*.dll拷贝到程序目录
c++线程用法
当前最常用的几个线程库
1、c++官方<thread>,使用的函数类std::thread
2、QT的QThread类 3、Windows API ::CreateThread
std::thread
lambda写法
1234567891011121314int nInputValue1 = 10;//输入的形参1int nInputValue2 = 20;//输入的形参2// 线程函数声明std::thread testCppThread([&](int nVal1,int nVal2) { // 逻辑代码 for (int i = 0; i < nVal1; i++) { std::this_thread::sleep_for(std::chrono::milliseconds(100)); } }, nInputValue1, nInputValue1);testCppThread.detach(); // 后台执行,立即执行后续代码// testCppTh ...
Hexo个人建站指南
常用组合命令
hexo s -g #生成并本地预览
hexo d -g #生成并上传
hexo clean #清空本地缓存
hexo clean && hexo g && hexo s
markdown标题头配置
123456title: 文章标题date: 2024-02-10 14:47:40categories: 分类(只能单个)tags: - 标签一(可以多个) - 标签二
设置显示数学公式
方法1
Hexo当中的数学公式插入问题
hexo已经把hexo-math整合到了hexo里面,所以你不需要再去单独装一些东西。你要做的事情就是,打开themes->你的主题,我这里是next->_config.yml
方法2
找到math这一段 把mathjax 下面的enable: false 改成 true
1234567891011121314# Math Formulas Render Support# Warning: Please install / uninstall the relevant rend ...
人工智障瞎学
人工智障瞎学
一、环境配置
12345tensorflow-gup==2.0pytorch==1.3.0cuda==10.1cudnn==7.6.4nvidia-418
tensorflow2.0 解决pycharm自动补全与应用bug(reference
csy)
注: 修改里我们仅仅修改了keras的import路径,所以keras需要使用from
tensorflow import keras; 而import
keras中其他的包例如layers,需要写成from tensorflow.python.keras import
xxxx;
Go to the dir /python3/site-packages/ and change the name of
/tensorflow/ to /tensorflow_back/, then change the name of
/tensorflow_core/ to /tensorflow/
Go to the file /tensorflow/init.py(which was in
/tensorfl ...
