构建arm64库
sudo apt install g++-aarch64-linux-gnu gcc-aarch64-linux-gnu sudo apt install clang-format-9 #If you want to get rid of the CMake warning "Could NOT find CLANG_FORMAT: Found unsuitable version "0.0", but required is exact version "9" (found CLANG_FORMAT_EXECUTABLE-NOTFOUND)" mkdir tensor_flow_lite cd tensor_flow_lite git clone --single-branch --branch r2.9 https://github.com/tensorflow/tensorflow tensorflow_src mkdir tflite_build_arm64 cd tflite_build_arm64/ cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain_arm64.cmake ../tensorflow_src/tensorflow/lite/ cmake --build . -j 4toolchain_arm64.cmake:
set(CMAKE_SYSTEM_NAME Linux) #OS on target machine set(CMAKE_SYSTEM_PROCESSOR aarch64) #Target processor set(CMAKE_LIBRARY_ARCHITECTURE aarch64-linux-gnu) set(CMAKE_ASM_COMPILER /usr/bin/aarch64-linux-gnu-gcc) set(CMAKE_C_COMPILER /usr/bin/aarch64-linux-gnu-gcc) set(CMAKE_CXX_COMPILER /usr/bin/aarch64-linux-gnu-g++) set(CMAKE_LINKER /usr/aarch64-linux-gnu/bin/ld) set(CMAKE_FIND_ROOT_PATH /usr/aarch64-linux-gnu) #Search under the specified folders (before searching under specified folders in CMAKE_SYSROOT) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) #find_program() should never search in CMAKE_FIND_ROOT_PATH set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) #find_library() should only search in CMAKE_FIND_ROOT_PATH set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) #find_file() and find_path() should only search in CMAKE_FIND_ROOT_PATH set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) #find_package() should only search in CMAKE_FIND_ROOT_PATH,取自CMake and Bazel documentations for compiling tensorflow-lite are incomplete and/or incorrect #57097
# pip install cupy-cuda117 import cupy as cp a=cp.ones([1024,1024]) for i in range(10000): cp.matmul(a,a),参考链接Tensorflow on Linux with conda is loading the process on GPU memory but executes with CPU
wine把windows的一些行为翻译到linux里面,.wine相当于挂载了一个windows系统,winecfg配置wine,winetricks安装额外的dll和字体,另外deepin-wine,以及不同版本,之前我不懂在系统上乱装wine,执行pacman Q|ls wine得到如下结果:
deepin-wine-helper 5.1.42_1-1 deepin-wine-wechat 3.7.5.31-1 deepin-wine5 5.0.16-1 deepin-wine5-i386 5.0.16-1 deepin-wine6-stable 6.0.0.24-1 deepin-wine6-stable-amd64 6.0.0.24-1 deepin-wine6-stable-i386 6.0.0.24-1 wine 7.15-1 winetricks 20220411-1,
wine xx.exe运行某windows可执行文件,剩下的看wine环境是否支持它完成运行
cd cv mkdir build cd build cmake -DOPENCV_EXTRA_MODULES_PATH=../../cv-contrib/modules -DWITH_FFMPEG=OFF .. make -j5 sudo make install,没测试是否能用,但最后是安装成功了,-DOPENCV_EXTRA_MODULES_PATH是看cv-contrib仓库的说明添加的参数,包括cd、cmake和make命令都是看contrib README知道的,-DWITH_FFMPEG=OFF是因为查类似xx字符串没有声明是否要替换为AV_xx字符串的报错(具体报错内容:error: ‘CODEC_ID_MSMPEG4V3’ was not declared in this scope; did you mean ‘AV_CODEC_ID_MSMPEG4V3’?),应该是ffmpeg兼容性的问题,参考自https://stackoverflow.com/questions/28319376/installing-opencv-in-ubuntu-14-10
我想悲伤地哭,因为我们只能无言地分别,我不再抱有线上与她交流的期待。
热泪,洒下来吧。阳光,照射下来吧。你我都明白,它们要烧成灰烬。
绿绿的蝇虫尸体淹没繁茂的森林,凉拌的炒面叫嚣着它的价值,等待进入饱餐一顿的胃口。
时钟发出丧鸣,到时候了,我亲手盖上了白布
import numpy as np import wave import sys filename='A2_0.wav' wav=wave.open(filename,'rb') num_frame=wav.getnframes() num_channel=wav.getnchannels() framerate=wav.getframerate() num_sample_width=wav.getsampwidth() str_data=wav.readframes(num_frame) print(str_data,len(str_data),num_frame/framerate) wav.close() wave1=np.fromstring(str_data,dtype=np.short) wave2=np.frombuffer(str_data,dtype=np.short) comparison=wave1==wave2 assert comparison.all() for i in range(0,wave2.size,10): print(wave2[i:min(i+10,wave2.size)])
vi /etc/pam.d/sshd,添加auth required pam_tally.so deny=10 unlock_time=10表示登陆ssh输错密码十次锁定10分钟,参考链接:26.Linux禁止root登录和密码输错3次锁定5分钟。还是不要采用这个操作了,突然,密码正确也登陆不上去了。。。之前我也没输错过,就算换用户也不行。不知道它判断多次输错无法通过验证的逻辑是针对什么。还是不搞了。
验证程序:
import numpy as np l=[0]*100 for i in range(1000): x=np.random.randn(1000).tolist() for xe in x: print(xe) l[int(abs(xe)*10//1)]+=1 print(l),结果
...... 0.5353276834514655 -3.1430225047164737 0.035973083937093274 0.09247104257391851 -0.04940073412785267 1.7476763189313065 -0.47304303662557173 -1.6228314405984 0.2597399026678085 -0.188415215483162 0.4759598484575246 [79146, 78174, 77620, 75037, 72432, 68310, 64269, 60222, 55967, 51077, 46157, 41123, 36364, 31987, 27982, 23999, 20444, 17395, 14537, 12134, 9734, 7917, 6292, 5021, 4103, 3087, 2335, 1913, 1397, 1035, 807, 574, 415, 318, 194, 170, 92, 74, 53, 28, 18, 16, 15, 7, 3, 1, 3, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
错误原因:没有安装TensorRT,实际上这只是警告信息,而不是错误,libnvinfer.so.7和libnvinfer_plugin.so只在使用NVIDIA TensorRT的时候才是必须的。没有这两个库也可以运行tensorflow.解决方法:安装TensorRt,参考链接:错误 Could not load dynamic library libnvinfer.so.6 解决方法
上周面了阿里,今天面了蚂蚁,搞得我都挺自闭的。但是上周面完阿里我就不想投简历了,因为反正投了也没用,工作这么难找,招聘门槛这么高,还有个原因:我想专注做毕设,等到找工作专注投简历、面试,直接去干;今天面完蚂蚁心里释怀了(或许我想努力,我室友在认真地投递找工作),给我冲!!大厂的要求,我怎么够得上呢?送死,快速寄完,就是这样。总有机会去其他公司,做毕设闲的时候去投简历。
工作又不是吃棉花糖,讨要饭钱的事情,也要趋之若鹜,因为有一种焦虑:你找不到好工作了。神:哈哈,你找不到好工作了。。。
默认标识是6x4,如果需要更改图像的尺寸,更改为6和4的相对值,如(10,10)表示比默认图更宽和更高的图像,默认尺寸是6.4x4.8英寸,6英寸=15.24厘米,5英寸=12.7厘米
假设一年365天,计算方式:1-P(n人生日都不同天),当n=50时,50人不同天的概率365*364*363*...*316/365^50,每个人有365个日子,每个人生日不一样,则第一个人有365个选择,第二个人的生日与第一个人不一样,有364个选择,第三个人有363个选择,计算结果的代码如下:
def stair_prod_pre(a,b): res=1 for i in range(b): res*=(a-i) return res def diff_birth(n): if n>365: return 0 return stair_prod_pre(365,n) x=50 print(1-diff_birth(x)/pow(365,x))
from datasets import list_datasets,load_dataset
datasets=list_datasets()
dataset=list_datasets(with_details=True)[datasets.index('laion/laion2B-en')]
load_dataset('laion/laion2B-en'),参考链接:使用Hugging Face的数据集库
du -h --max-depth=1 .,参考链接:Linux系列:查看子目录文件夹大小
netstat -nlptu|grep port看到进程号后ps -ef|grep process-id获得进程信息
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
def Fun(x,y): # 原函数
return x-y+2*x*x+2*x*y+y*y
def PxFun(x,y): # 偏x导
return 1+4*x+2*y
def PyFun(x,y): # 偏y导
return -1+2*x+2*y
fig=plt.figure()
ax=Axes3D(fig)
X,Y=np.mgrid[-2:2:40j,-2:2:40j]
Z=Fun(X,Y)
ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap='rainbow')
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
step=0.0008
x=0
y=0
tag_x=[x]
tag_y=[y]
tag_z=[Fun(x,y)]
new_x=x
new_y=y
Over=False
while Over==False:
new_x-=step*PxFun(x,y)
new_y-=step*PyFun(x,y)
if Fun(x,y)-Fun(new_x,new_y)<7e-9:
Over=True
x=new_x
y=new_y
tag_x.append(x)
tag_y.append(y)
tag_z.append(Fun(x,y))
ax.plot(tag_x,tag_y,tag_z,'r.')
plt.title('(x,y)~('+str(int(x))+','+str(int(y))+')')
plt.show(),参考自【Python学习笔记】13:用梯度下降法求解最优值问题
multiprocessing.Process(target=function,args=(param_tuple))构建子进程p,p.daemon=True使得p能够与父进程分开双方独立运行,但父进程退出后子进程也会退出,p.start()启动子进程,如果要让父进程等待子进程运行完毕再运行调用p.join(),参考链接:python中父进程与子进程,Python多进程编程详解
gimp-Filters-Enhance-Sharpen(Unsharp Mask)调节参数,参考链接:用 GIMP 增强照片的清晰度、锐度
<a href="/static/{{variable_path_url}}">,参考链接:Python 如何在href标记中使用flask变量?
在欢迎使用CAJViewer页面下载CAJViewer for Linux(中科方德+兆芯)的软件包,用Ark解压cajviewer_1.0.3.0_amd64.deb,并解压data.tar.xz.
cd opt/cajviewer/lib sudo cp libreaderex_x64.so /usr/lib cd ../bin sudo cp cajviewer /usr/bin sudo mkdir /opt/cajviewer sudo cp -r Resource /opt/cajviewer/ ldd /usr/bin/cajviewer|grep found # 无结果说明没问题,程序能找到所有库依赖 ldd /usr/lib/libreaderex_x64.so|grep found cajviewer # 开始使用,参考文献:Archlinux安装CAJViewer For Linux, CAJviewer Linux版安装使用指南!
被踩下去的人,有我一个足矣。让我待在阴暗的角落,跟周围的腐流融为一体。祝福他们光辉的战绩,生龙活虎,战至天明。甚至几个巨人都不用祝福,我不过是被踩下去的人。
都是表格,一组有序的事物,ark(archive)包含实际的数据,scp(script)指出数据的具体位置,参考链接:kaldi 的常用ark scp命令
我猛然撞见他在夜中随着激昂的音乐舞蹈,他的身边有凝聚的火花激荡,我想他此时的愿望一定很简单,那就是尽兴地舞蹈,很奇怪未来的日子里他还能否有此快活的兴致?应该还有吧。:D
这是聪明的卡尔,卡尔给你提了一个建议:聪明人从不多看一眼网上的风言风语,接受这条建议,并说:“谢谢你,聪明的卡尔”
softdaisie: maybe mediocrity isn't wrong.maybe you don't need to be the best at everything you do.maybe you don't need to be the best at anything you do.it's ok to simply do things because you enjoy doing them.its ok to not want to advance in your job.nothing has to be a competition.you don't need to be better than anyone.you can do things just because they're fun.you don't need to read up on the history,and know everything about it.its ok to just exist.its ok.
softdaisie:其实平凡也没什么不对。你并不一定要事事都争第一,甚至完全不去争第一也没关系。你并不一定要努力争取升职,不用把什么都当成一个比赛,也不一定就要做得比别的人好。你完全可以纯粹因为爱好就去做你想做的事情。你也不用事事都追根究底。就这么活着,也挺好的呀。