- 博客(35)
- 收藏
- 关注
原创 C++ vector使用erase()删除元素时的注意事项
在使用erase()删除元素时,如果不清楚该函数实现原理,可能会造成莫名的bug,正常情况下使用for循环查找vector中元素是否满足条件时一般会用错误演示中的代码,但这种情况可能会导致段错误,原因在于,如果it当前为最后一个元素的迭代器,那么将会返回无效地址,此时将执行it++;正是这条语句导致的地址非法即段错误,因此要解决该问题,那么就需要将it回退到n-1处的地址,或者修改for循环,...
2020-05-07 16:55:57
1782
1
原创 linux 使用find命令查找目标文件 -path -prune 参数的使用以及文件名中出现特殊符号的查找方法
背景介绍: 在使用linux查找文件时,有些目录不需要查找,在查到这些目录时会打印很多无用提示信息,如:方法: 使用-path -prune参数达到屏蔽这些目录的效果排除一个:find ./ -path /proc -prune -o -name target_file -type d -print排除多个:find ./ (-path /proc ...
2020-02-24 00:07:20
967
原创 tensorflow名称域name_scope(),variable_scope(),与tf.Variable(),tf.get_variable()
tensorflow的名称域的声明有两种方式:1)tf.name_scope("scope_name"):2)tf.variable_scope("scope_name"):定义变量有两种方式:1)tf.Variable()#变量名可选2)tf.get_variable()#变量名必选在variable_scope名称域中定义变量,则两种变量定义都是一样的在name_s...
2019-12-15 03:29:37
268
原创 编译报错:undefined reference to `std::__cxx11::basic_string
此错产生原因为:c++11与旧的c++库函数实现存在差异,当本地的c++代码动态库为旧版本c++库所实现,而编译器g++5,gcc5将其解释为std::__cxx11,就会出现未定义错误,那么需要指定编译器的版本为g++4,gcc4,再进行编译时就不会发生上述问题, 相关命令:1、编译器版本查看gcc -v,g++ -v2、安装相应版本编译器sudo apt-...
2019-11-25 20:43:45
27428
2
原创 cygwin下python的交互设定
问题:在cygwin中直接使用python命令无法达到在Linux shell与win cmd下的交互效果。原因:在cygwin终端中运行命令,该终端不能当做控制台,因此,当执行python.exe时并不会与交互控制台进行交互解决方案:1、使用python -i code.py ,其中-i表示以交互模式运行2、使用cygstart path/python.exe的方式执行,path为pyt...
2019-11-21 17:42:37
259
原创 多个python版本共存时,在win与Linux系统下shell环境下执行指定版本的方法
在Linux环境下如果安装有python2.7和python3.5版本,一般直接使用python2.7或者python3.5就可执行相应版本的python在win环境下,则是通过py -2 ,py -3的方式,分别执行不同版本的python...
2019-11-21 17:41:36
429
原创 多版本python共存下安装三方库的方法
当我们的开发环境中存在过个版本的python时,会发现不同的python版本需要在各自的环境下安装三方库以win系统举例,在python2.x版本下安装三方库py -2 -m pip install --user lib如果要指定三方库的安装版本,则需在lib后加==versionid在python3.x版本下py -3 -m pip install --user lib另外在通过p...
2019-11-21 17:40:24
619
原创 android makefile编译问题总结
经过对android Makefile文件的使用,过程中出现了各种各样的问题1、ninja: error: '.so', needed by out/target/product/xxx/obj_arm/SHARED_LIBRARIES/libxxx_intermediates/PACKED/libxxx.so',missing and no known rule to make it....
2019-10-22 20:26:27
1512
1
原创 python 使用open()函数打开文件报错Python UnicodeDecodeError: 'gbk' 或者'utf-8' codec can't decode byte
在python3.5版本中用open()函数打开日志文件报错,'gbk' 或者'utf-8'这两种编码方式都会报错,用百度google后引入类codecs,使用该类的open()函数,指定编码方式为'iso-8859-15',即import codecscodecs.open(filename,’r’,encoding=’iso-8859-15’)...
2019-07-24 16:49:26
1441
原创 Linux 与windows之间目录或磁盘映射操作
一、将Linux中的目录映射为Windows中的磁盘1、实现windows访问普通Linux共享目录step1 安装smbastep2配置一个windows通过samba访问Linux目录时,需要用到的用户名和密码: smbpasswd -a usernamestep3 在Linux服务器中修改etc/samba/smb.conf文件,在文件中...
2019-04-11 11:39:46
8594
1
原创 linux C++环境下,dump图片注意细则
目标,将camera的预览帧根据自定义条件进行dump,因此我们需要先创建一个文件 path/name,path必须存在,如果不存在则会open()失败,另外项目中sdcard/路径下,怎么都open fail,包括关闭seLinux,然后转移路径到data目录下,最终成功,另外在使用sprintf函数进行格式化文件名时,出现一个问题是,定义的char* var必须要先进行分配内存,或者...
2018-12-25 16:47:30
508
原创 屏蔽百度无孔不入的垃圾广告
真是受够了百度推广的广告,尤其是经常看优快云博客,垃圾百度搞的广告一直在不间断的在视线中晃来晃去,而且是各种恶心的图片,TM的没有一点节操。 看网上一堆的文章在介绍,通过百度首页的,使用前必读中的个性化设置来关闭,可能之前有用,但是现在百度相应的网页中已经取消了相关设置,鸡贼的很。 于是开始下载ADsafe,但没有阻止嚣张的百度垃圾广告,无意间发现一个Chrom...
2018-12-17 22:03:56
614
原创 使用tensorboard 报错No dashboards are active for the current data set.
记得之前使用tensorboard --logdir path,一直没问题的,今天在使用tensorboard可视化卷积结果时却在网页上显示了标题中的提示语,在百度后试了下path用绝对路径,果然没问题了,挺奇怪的,但是这之后再使用相对路径又没问题了,这种奇葩情况记录下备忘。...
2018-12-17 14:30:45
164
原创 使用shell脚本来监测当前服务器GPU资源使用
由于公司装有GPU的服务器很少,当多个人同时使用GPU进行计算时就会导致OOM,但频繁的去查看GPU使用,又觉得很麻烦,枯燥的活还是让脚本干吧,所以从零开始写了个脚本,将中间遇到的问题进行下总结。 过程中熟悉了下if-then-else-fi,while-do-done等逻辑判断方式,还有在脚本中输入用户密码的方法,整个脚本就几行,十分简洁。 1、 变量...
2018-12-14 20:50:19
3186
原创 vim的使用总结
一、配置.vimrc,自动加载,保存代码折叠状态 因为平时主要使用python语言进行开发任务,在使用vim时,有些代码对于分析问题并不重要,这时就可以将这部分代码折叠起来,当然这种语言环境下我还是比较喜欢使用Manual Fold 方式,但是在将vim关闭后,折叠信息就没有了,那么可以使用 :mkview命令来进行保存,但是给出提示 ...
2018-12-12 15:57:37
232
原创 对图像各个通道进行处理后重新merge为一个彩色图像的过程
项目需要将图像进行光线补偿后再输入模型进行处理,那么要对图像进行光线补偿,有GrayWorld色彩均衡算法,具体步骤如下代码所示: img = Image.open(path) M,N = img.size id1 = np.asarray(img) r,g,b = img.split() #print("t...
2018-11-22 21:00:09
2898
1
原创 python 对字典数据类型的认识
字典dict 是用{ }括起来的数据类型,每个元素都以键值对的形式存在,dict = {key:value.....},字典与其他类型一样,都有嵌套使用的场景,有这样一个使用场景:有10个不同类的文件集,需要在每个文件集中划分出训练集与测试集,一种做法是建立一个字典sample = {},对每个类的文件集都通过使用samples[type_i] = {'train':list_tra...
2018-11-15 18:09:44
211
原创 python glob.glob()函数认识
glob()函数就像Linux中的find -name *.type一样,可以将某目录下所有跟通配符模式相同的文件放到一个列表中,有了这个函数,我们再想生成所有文件的列表就不需要使用for循环遍历目录了,直接使用glob.glob(path+pattern)的方式获取,举个例子 这个例子中,我们的目的是生成daisy中的所...
2018-11-15 17:07:15
29402
3
原创 对TensorFlow中图概念的简单整理
TensorFlow中是先建图,再执行计算,那么默认图与导入的图、指定默认图之间是个什么样的关系呢?写段代码测试下 从上边代码执行结果来看,create_graph()创建的图与main()中的默认图是不一样的,结论一:如果session会话中没有指定图参数,那么系统会将自动维护一个默认图,如果修改tf.Session(graph = c),把第三个p...
2018-11-14 17:59:41
891
原创 对CNN网络的计算流程的简单梳理
一、对多分类函数tf.nn.softmax()与交叉熵函数tf.nn.softmax_cross_entropy_with_logits()的认识这俩函数看着就有关系,前缀都是tf.nn.softmax,那么各自的作用是什么呢? 首先看这俩函数的参数,前者是logits,后者也有个logits,区别是后者多了个labels参数,其中logits参数是输出层的...
2018-11-14 10:55:24
876
原创 Linux命令行中的 符号 '\' ,' --'的作用
之前不清楚符号的作用,害的自己命令执行出错,费了一番周折,澄清下认知,这俩符号一般在命令行中出现,\一般出现在行尾,是因为当前行中字符太多,在行尾尚有未写完的字符串,加上该符号后就可以下行行首的字符相连,相当于替换\n的作用,如果在行中间加上该字符,则该字符即成为前边字符串的一部分,在命令行中进行测试验证, 在命令中间加上 \后,下边提示No such...
2018-11-12 14:53:41
18090
1
原创 inception v3模型经过迁移学习后移植到移动端的填坑经历
先混乱的记录下 1、在将迁移后的pb文件转换为lite文件时报错, 使用 graph.get_operations()查看tensor,Tensor("DecodeJpeg/contents:0", shape=(), dtype=string),原来使用TensorFlow中提供的图像读取函数tf.image.decode_jpeg()得到的是原始...
2018-11-12 14:26:23
1390
4
原创 python 中使用main函数的注意事项
今天在写代码测试程序时,发现执行tf.app.run()会提示TypeError: main() takes 0 positional arguments but 1 was givenmain函数的定义形式是这样的, def main(): pass报错的含义是不需要参数,但是却赋了一个参数,可明...
2018-11-02 17:46:49
1966
原创 Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.
在公司Linux服务器上执行tf.import_graph_def(graph_def, name='graph')导入训练好的图时,报了个错误:ValueError: NodeDef mentions attr 'Truncate' not in Op<name=Cast; signature=x:SrcT -> y:DstT; attr=SrcT:type; ...
2018-11-02 15:36:06
7759
1
原创 jupyter notebook中编写关于graph的操作时要注意的点
偶然发现当在jupyter notebook中执行如下代码时会产生些错乱的结果import tensorflow as tfimport osMODEL_DIR = 'C:/Users/pradmin/Desktop/迁移学习相关/inception_dec_2015/'MODEL_FILE = 'scr.pb'MODEL_FILE = 'tensorflow_incept...
2018-11-01 20:27:34
502
原创 xshell多窗口的使用
xshell中开启多窗口可以一边关注程序运行情况,一边进行其他操作,开启的组合键shift+alt+t,然后会在原窗口下开启一个相同服务器的窗口,此时点击该标题栏使用鼠标进行拖动,然后窗口界面会出现明显的淡蓝色背景,此时就可以拖到你想要的位置上,在开启多窗口后,需要在不同的窗口建进行切换,组合键为shift+tab。...
2018-10-11 18:26:38
12916
原创 python中使用pip工具批量导出项目所依赖的所有库文件及安装的方法
在Python中我们在项目中会用到各种库,自带的自然不必再说,然而如果是三方库,则在进行项目移植时通常需要在新的环境下安装需要的三方库文件,面对较大项目中众多的三方库,可以先将项目依赖库导出到txt文件中, 导出命令为:pip freeze > filename.txt,其中filename可以自己定义。 在新...
2018-10-04 21:59:50
3999
原创 python正则表达式匹配不包含某几个字符的字符串
一、匹配目标 文件中所有以https?://开头,以.jpg|.png|.jpeg结尾的字符串 二、尝试过程 1) 自然想到正则表达式r'(https?://.*?.jpg|https?://.*?.png|https?://.*?.jpeg)简化书写为r'(https?://.*?\.(?:jpg|png|jpeg) 匹配结...
2018-10-01 17:18:41
16183
原创 python3.*版本将list写入txt文件中
要把list类型数据写入txt文件中,步骤如下:step1 :open()一个要写入的文件 with open("path\filename","wb") as f:step2 : 读取list中的每一项 for list_mem in list: f.write(list_mem+"\n",en...
2018-10-01 17:06:51
15903
1
原创 python中enumerate()函数的用处
刚学python,对一些函数不是很熟悉,在做一个项目的时候,有这样一个场景:我需要爬取几个大类中不同小类的图片首先是大类列表type_list = [A,B,C],其中A = ['a','b','c'], B = ['e','f','g'],C=['h','j','k'],A列表的名字为A_name,B,C类推。type_name = ['A_name','B_name','C...
2018-09-30 10:42:29
495
原创 使用git commit命令报错: missing Change-Id in commit message footer
今天从本地添加一份代码到服务器中,在执行到git commit ....时,报错:missing Change-Id in commit message footer。这本在意料之中,然后按照提示,执行命令 gitdir=$(git rev-parse --git-dir); scp -p -P 29418 *****@*****:hooks...
2018-09-29 20:34:00
4142
1
原创 win7下安装jupyter
在Linux shell下进行python项目的开发不方便调试,之前使用了pycharm进行开发,相比命令行的操作方式可谓是鸟枪换大炮了,pycharm的风格跟android studio非常相似,但是自从知道了jupyter后,又心猿意马,打算尝试下这个机器学习业界使用最多的开发利器。 这次是在win7 64位系统下安装的python3.7 64位版本,这里插一下,开始安装的...
2018-09-27 17:57:47
1403
原创 在Linux服务器端开启可视化界面的过程,Xmanager、pycharm
在服务器端使用vim去写python代码,调试起来比较麻烦,于是打算使用pycharm这个利器去搞代码,step1: 直接执行脚本 ./pycharm-community-2018.1.2/bin/pycharm.sh,提示报错Startup Error: Unable to detect graphics environment ,然后需要安装X...
2018-07-12 15:56:41
13058
1
原创 在Linux环境下,安装opencv -python
在安装opencv之前需要配置的有cmake ,numpy, python2.7,这些文件的安装网上教程一大堆不再细述,step1:新建opencv文件夹,在该文件夹下git clonegit clone https://github.com/opencv/opencv.git git clone https://github.com/opencv/opencv_contrib.gitstep2:...
2018-06-08 17:06:12
5483
原创 对字符串比较函数strcmp(),Linux 下read()函数的认识
strcmp()函数是用来比较两个字符串大小的,也可以是字符数组,,在使用strcmp(str1,str2),比较俩字符串是否相等时,如果str1是一个字符数组,str2表示字符串常量,则需要注意的是,str2中是包含‘\0’的,也就是说,str1,中需要注意是否添加了‘\0’这个字符,strcmp()函数遇到‘\0’就不再遍历该字符后边的字符。char p[5]={'a','s','\0','f...
2018-05-19 15:43:05
1816
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人