Ubuntu 安装 dlib 库时的疑难杂症

解决方法

安装 C/C++环境

sudo apt install gcc
sudo apt install g++

激活 conda 环境

source activate OpenCV
pip install boost
pip install cmake
pip install dlib

如果还没解决问题,还报错直接运行

sudo apt install build-essential

conda 下载慢的请看http://www.cnblogs.com/Ahtelek/p/ubuntu-install-anaconda.html

本文来自博客园,作者:Ahtelek·B,转载请注明原文链接:http://www.cnblogs.com/AhtelekB/p/ubuntu-install-dlib.html

本文转载于网络 如有侵权请联系删除

相关文章

  • leetcode刷题(62)——309. 最佳买卖股票时机含冷冻期

    给定一个整数数组,其中第i个元素代表了第i天的股票价格。​设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票):你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 卖出股票后,你无法在第二天买入股票(即冷冻期为1天)。 示例:输入:[1,2,3,0,2] 输出:3 解释:对应的交易状态为:[买入,卖出,冷冻期,买入,卖出]根据通用算法,改变一下即可,考虑冻结期classSolution{ publicintmaxProfit(int[]prices){ if(prices==null||prices.length<1){ return0; } int[][]mp=newint[prices.length][2]; //初始化第一天数据,买入股票 mp[0][1]=-prices[0]; mp[0][0]=0; //依次递归最大收益 for(inti=1;i<prices.length;i++){ if(i-2<0){ mp[i][1]=Math.max(mp[i-1][1],mp[0][0]-prices[

  • 新的App Dev CRM模型(Internet)

    新的AppDevCRM模型C RM是一个充满转折点的行业,我认为这是另一个行业。出现了许多较小的转变,例如增加了分析,社交媒体和流程。但是,为了了解这一时间点,我认为您必须一直追溯到世纪之交和云计算的兴起。云作为一种经济标记很重要,而其他转折点则没有。当软件即服务出现时,它代表了整个技术市场上早该开始的商品化浪潮,而CRM是测试案例。软件很大程度上不受第一波云浪的影响。当然,当我们进入多租户架构时,商品成本崩溃了,但是硬件,中间件和人工的成本在这种转变中首当其冲。如今,一家初创公司可以访问同等水平的软件,并且具有复杂的业务流程,因此大型竞争对手可以做到这一点,结果在一个行业接一个行业中,竞争优势取决于诸如卓越的供应链,更深层次的融资等,并且行业寿命大大降低。在互联网上,每个人都是一样的。平台是新的差异化因素现在,由于集成和生成应用程序的软件平台的出现,商品化直接打入了软件市场。正如我不止一次提到的,该平台是新的差异化因素。它生成几乎没有错误的代码,将大多数企业认为今天必不可少的应用程序的所有组成部分组合在一起,并且为使用该平台的任何企业提供了我们曾经梦想的敏捷性。所有这些都降低了应用程

  • 单细胞转录组数据处理之上游分析流程

    scRNA-seq技术到目前为止也有一百多个了,但主流的可以大致分为以下几种:Droplet-based:10XGenomics,inDrop,Drop-seqPlate-basedwithuniquemolecularidentifiers(UMIs):CEL-seq,MARS-seqPlate-basedwithreads:Smart-seq2Other:sci-RNA-seq,Seq-Well实际上你需要理解的就是10x数据和Smart-seq2技术啦,最常用而且最常见!上游分析流程我们分开讲解,在群主的7个小时的单细胞转录组视频课程(限时免费)视频里面演示的其实是Smart-seq2技术的单细胞转录组数据处理,而且仅仅是半个小时的教学,其实是需要你有非常多的背景知识才可能看得懂。首先针对10x数据目前单细胞是10x的天下,而10x的测序数据,御用软件cellranger其实就是star的包装,关于10X仪器的单细胞转录组数据走cellranger流程,我们在单细胞天地多次分享过流程笔记,大家可以自行前往学习,如下:单细胞实战(一)数据下载单细胞实战(二)cellranger使用

  • 读Hadoop3.2源码,深入了解java调用HDFS的常用操作和HDFS原理

    本文将通过一个演示工程来快速上手java调用HDFS的常见操作。接下来以创建文件为例,通过阅读HDFS的源码,一步步展开HDFS相关原理、理论知识的说明。 说明:本文档基于最新版本Hadoop3.2.1目录一、java调用HDFS的常见操作1.1、演示环境搭建1.2、操作HDFS1.3、java文件操作常用方法二、深入了解HDFS写文件的流程和HDFS原理2.1、Hadoop3.2.1源码下载及介绍2.2、文件系统:FileSystem2.3、HDFS体系结构:namenode、datanode、数据块2.4、如何访问阿里云OSS等文件系统2.5、文件租约机制2.6、RPC机制2.7、HDFS客户端写流程总结2.8、Hadoop3.x新特性:纠删码2.9文件透明加密处理和目录树2.10、HDFS客户端写流程总结一、java调用HDFS的常见操作首先我们搭建一个简单的演示工程(演示工程使用的gradle,Maven项目也同样添加以下依赖),本次使用的是Hadoop最新的3.2.1。1.1、演示环境搭建新增一个普通的java工程即可,过程略,添加hdfs相关依赖jar包implementa

  • 性能优化-测试If-Else和if哪个性能更好

    版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/weixin_42528266/article/details/103280680代码示例packagecom.cwl.po.judge; /** *@program:cwl-performance-optimization *@description:测试If-Else和if哪个性能更好 *@author:ChenWenLong *@create:2019-11-2711:23 **/ publicclassTestIfAndIfElse{ //结论使用If和If-Else性能相同 publicstaticvoidmain(String[]args){ System.out.println(testIf());//8ms System.out.println(testSwitch());//8ms } /** *功能描述: *〈测试switch性能〉 * *@return:long *@params:[] *@author:cwl

  • double浮点数运算为啥会丢失精度?

    前言:在工作中,谈到有小数点的加减乘除都会想到用BigDecimal来解决,但是有很多人对于double或者float为啥会丢失精度一脸茫然。还有BigDecimal是怎么解决的?话不多说,我们开始。1.浮点数是啥?浮点数是计算机用来表示小数的一种数据类型,采用科学计数法。在java中,double是双精度,64位,浮点数,默认是0.0d。float是单精度,32位.浮点数,默认是0.0f;在内存中存储float符号位(1bit)指数(8bit)尾数(23bit) double符号位(1bit)指数(11bit)尾数(52bit) float在内存中指数是8bit,由于阶码实际存储的是指数的移码,假设指数的真值是e,阶码为E,则有E=e+(2^n-1-1)。其中2^n-1-1是IEEE754标准规定的指数偏移量,根据这个公式我们可以得到2^8-1=127。于是,float的指数范围为-128+127,而double的指数范围为-1024+1023。其中负指数决定了浮点数所能表达的绝对值最小的非零数;而正指数决定了浮点数所能表达的绝对值最大的数,也即决定了浮点数的取值范围。 float的

  • Google发布三大新品,Pixel手机价格直逼苹果

    整理|费棋出品|AI科技大本营北京时间10月9日晚间,Google在秋季发布会上推出了Pixel手机、平板电脑PixelSlate以及智能音箱HomeHub三大新品。最新旗舰手机Pixel3和Pixel3XL如约而至,但由于产品信息在发布前就已被泄露,几乎没有什么好说的了,不过发布流程终归还是要走一下。话说回来,至少也还可以看看Google要想强调的亮点有哪些?亮点先看价格。Pixel3起售价为799美元(4GB+64GB),3XL售价为899美元(128GB),相比去年的同类型型号分别高出了150美元和50美元,直逼苹果和三星,这让注重“高性价比”的中国网友一如既往发出惊呼:Google有什么勇气能卖这么贵的手机?两者的核心配置包括骁龙845,4GBRAM,蓝牙5.0和前置立体声扬声器,还内置有一个新的TitanM安全芯片,以保护应用数据和操作系统的完整性。Pixel3和Pixel3XL的屏幕比去年的模型更大,Pixel3XL是一个6.3英寸屏幕,而Pixel3是5.5英寸屏幕。手机产品的亮点主要还是在相机部分,Google在这两款手机上都配备了一个1220万的后置摄像头,不过它们都

  • [案例]网易云音乐的个性化推荐

    作者授权转载 作者:宿痕 来源:知乎 链接:http://zhuanlan.zhihu.com/dataman/20510761用过虾米、酷狗、QQ音乐、网易云音乐,个人感受网易云音乐在音乐推荐这块做的真心不错,特别是以“人”为角度的推荐,没有像虾米、酷狗推的那么乱。虾米还可以,但更多的是以歌搜歌的形式。刚注册了一个新的账号,避免有历史数据的干扰,听了一首周杰伦的《一路向北》和陈奕迅的《淘汰》,然后去个性化推荐里看到了蔡健雅的《红色高跟鞋》和曲婉婷的《承认》,给我的感觉还是比较惊喜,像蔡健雅一般听的人比较少,还能推荐到体验不错。当然也有很多不一定特别准,当然听歌这东西就不需要完全准确。 网易云音乐关于个性化推荐这块在公司外部介绍的比较少,但应该推荐的算法和机制和大部分的音乐素材的公司做的类似。以item为核心的协同过滤(CF),通过打分机制来推荐最适合的歌曲。印象中早期网易云音乐还可以将自己听的歌曲分享到微信朋友圈等,通过跳转关联到的账户ID识别出朋友关系。这个想法的确很赞,包括我第一次听《一路向北》的时候也是一个朋友推荐给我的,这首歌不仅是个人喜欢的风格,再加上有朋友推荐所以留下很

  • 在运算符重载++,--,+=,-=...

    1//有关运算符重载 2//实现一个复数之间的相加 3#include<iostream> 4usingnamespacestd; 5classComplex 6{ 7public: 8Complex(doubler,doublea); 9Complex(){}; 10Complexoperator+(constComplex&aa)const; 11Complexoperator-(constComplex&bb)const; 12voidfun(); 13private: 14doublereal; 15doubleimag; 16}; 17Complex::Complex(doubler=0.0,doublea=0.0):real(r),imag(a){}; 18ComplexComplex::operator+(constComplex&aa)const 19{ 20Complexans(real+aa.real,imag+aa.imag); 21//ans.real=real-aa.real; 22//ans.imag=imag-aa.im

  • Python: Requests库网络爬取实战

    文章背景:网络爬虫已经成为自动获取互联网数据的主要方式。Requests模块是Python的第三方模块,能够满足日常的网络请求,而且简单好用。之前已经介绍了Requests库的调用方法(参见文末的延伸阅读),接下来进入实战环节。1爬取网页的通用代码框架2京东商品页面的爬取3亚马逊商品页面的爬取4百度/360搜索关键词提交5网络图片的爬取与存储6IP地址归属地的自动查询 1爬取网页的通用代码框架importrequests url="http://www.baidu.com" try: r=requests.get(url,timeout=30) r.raise_for_status() r.encoding=r.apparent_encoding print(r.text[:1000]) exceptExceptionasexc: print('Therewasaproblem:%s'%(exc))复制2京东商品页面的爬取importrequests url="https://item.jd.com/100014565820.html

  • iOS - UIScrollView滑动监听相关

    主要用到一个代理方法 -(void)scrollViewDidScroll:(UIScrollView*)scrollView{ NSLog(@"scrollViewDidScroll"); CGFloaty=scrollView.contentOffset.y; CGFloatasd=kScreenHeight-scrollView.size.height-20; if(y<=0){ //下滑 }else{ //上滑 } }复制 值得注意的是,手指离开屏幕的时候UIScrollView还在缓慢减速滑动,如果想它立马停止滑动,只需要实现下面的代理方法 //手指离开立即停止 -(void)scrollViewWillBeginDecelerating:(UIScrollView*)scrollView { [scrollViewsetContentOffset:scrollView.contentOffsetanimated:NO]; }复制  

  • 面经知识点

    不会的点: √进程间同步,进程间通信方式 IO多路复用epollselectpoll √协程 死锁进程和线程的死锁 √多线程多进程 √socket怎样建立进程间的通信 √Const关键字的用法 √右值引用 √编程实现:写一下shared_ptr这个类的实现,其中该有的数据成员和函数成员,如构造函数、拷贝构造函数、析构函数等 √移动构造函数 虚拟内存,虚拟内存实现方式 √怎么查看内存泄漏?Valgrind 看下智能指针源码如unique是如何实现独占性 √右值引用有什么用右值,右值引用 √voidf(constint&a)和voidf(inta)区别++++ √static,const在类中的作用 √深拷贝和浅拷贝,从内存的角度 √模板的特化和偏特化 √lamda表达式 C++11 有没有了解设计模式 设计模式原则 有没有用过显卡(问了显卡有关的知识,,,不懂就说不知道) 敏感词检测手写 √指针常量&常量指针? √常量函数? √常量函数、常量引用、指针常量、常量指针 √指针和引用的区别和用途(指针是C++的精髓,很常见),指针本身就是对象引用是别名,引用初始化时要绑定 √

  • 多变量函数的微分

    1.基本定义 设$$h=\left(h_{1},h_{2},\cdots,h_{n}\right)$$ 如果 \[f\left(x_{0}+h\right)-f\left(x_{0}\right)=\sum_{i=1}^{n}\lambda_{i}h_{i}+o(\|h\|),\quad\|h\|\rightarrow0 \]其中\(\lambda_{1},\lambda_{2},\cdots,\lambda_{n}\)不依赖于h,那么f在\(x_0\)处可微,并记 \[\mathrm{d}f\left(\boldsymbol{x}_{0}\right)=\sum_{i=1}^{n}\lambda_{i}h_{i} \]若f在D上每一点都可微,则称f是D上的可微函数,显然,微分是关于\(x_i\)的齐次线性函数 两式结合又可以写出$$f\left(x_{0}+h\right)-f\left(x_{0}\right)=df\left(x_{0}\right)+o(|h|),|h|\rightarrow0$$ 2.Notice 2-1方向导数和可微的一个小讨论 方向导数和可微之间容易

  • java经常碰到的@Override标签

    无论是在netBeans还是在eclipse开发环境中,写java代码的时候经常会碰到@Override标签,平时只知道是覆盖的意思就好了~那么这个标签的价值就只有这些吗?  最近一次,重翻《Thinkinginjava》的时候,自己看了一下,结果这个小小的标签倒是加深了我对于面向对象的理解。   一般用途                                                       &

  • T010 高度判断

    #include<stdio.h> #include<math.h> intmain() { floatx,y; scanf("%f,%f",&x,&y); if(pow((x-2),2)+pow((y-2),2)<=1||pow((x+2),2)+pow((y-2),2)<=1||pow((x-2),2)+pow((y+2),2)<=1||pow((x+2),2)+pow((y+2),2)<=1) printf("%d\n",10); elseprintf("%d\n",0); return0; }复制 pow函数有点邪教色彩,本来计算机求pow就是近似运算,然后浮点运算本身又有精度损失,然后标准库里的pow又不是很准,然后你浮点转整型的时候又没有使用任何误差补偿的方法,于是.....就是能不用就不用。。

  • 2019牛客第八场多校 E_Explorer 可撤销并查集(栈)+线段树

    @目录题意:分析: 题意: 链接 题目类似:CF366D,Gym101652T 本题给你\(n(100000)\)个点\(m(10000)\)条边,每无向边允许通过编号在\([Li,Ri](1\leLi\leRi\le1e9)\)内的人,问从\(1\)到\(n\)能通过多少个人。 分析: 赛中艹了30多发暴力无济于事。。。 因为以前做过一道数据范围1000的原题,当时做法好像是离散化后枚举区间暴力跑\(dfs\)查询或者带着区间跑暴力\(BFS\)最后检查一遍。。。 流下了菜鸡的泪水,主要是思维受限了,这很致命。 听说这题可以LCT写,目前只会可撤销并查集+线段树的写法。。 上面讲的也很清楚了,把所有的权值离散化一下,然后建一个以权值为关键字的线段树 这里提一下,这个线段树和上一场牛客的E题一模一样,是左闭右开线段树,就是每个叶子节点代表的是一段权值区间。这个线段树的解释:here 然后线段树上每个节点存的是覆盖当前点的权值区间的所有边。 区间更新完之后,把整颗树遍历一遍得出答案。 对于从根到叶子节点这段的权值区间中包含的边,用一个并查集维护连通性。 回溯时要撤销上面几条边的影响

  • 深度学习入门|第5章 误差反向传播法(二)

     误差反向传播法 前言 此为本人学习《深度学习入门》的学习笔记 四、简单层的实现 本节将用Python实现前面的购买苹果的例子。这里,我们把要实现的计算图的乘法节点称为“乘法层”(MulLayer),加法节点称为“加法层”(AddLayer)。 1、乘法层的实现 层的实现中有两个共通的方法(接口)forward() 和backward()。forward() 对应正向传播,backward() 对应反向传播。 实现乘法层。乘法层作为 MulLayer 类,其实现过程如下所示   classMulLayer: def__init__(self): self.x=None self.y=None defforward(self,x,y): self.x=x self.y=y out=x*y returnout defbackward(self,dout): dx=dout*self.y#翻转x和y dy=dout*self.x returndx,dy复制 __init__() 中会初始化实例变量&n

  • 深入解析Vue里函数的调用顺序介绍

    今天为大家分享一篇对vue里函数的调用顺序介绍,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 method用来定义方法的,比如你@click=”test”,methods就定义test这个方法 created和ready都是vue组件的生命周期 created 类型:Function 详细: 在实例创建之后同步调用。此时实例已经结束解析选项,这意味着已建立:数据绑定,计算属性,方法,watcher/事件回调。但是还没有开始DOM编译,$el还不存在。 ready 类型:Function 详细: 在编译结束和el第一次插入文档之后调用,如在第一次attached钩子之后调用。注意必须是由Vue插入(如vm.el第一次插入文档之后调用,如在第一次attached钩子之后调用。注意必须是由Vue插入(如vm.appendTo()等方法或指令更新)才触发ready钩子。 compted是计算属性,比如 computed:{ b:function(){ returnthis.a+1 } }/欢迎加入前端全栈开发交流圈一起学习交流:864

  • webpack优化环境配置 - 28.dll

    随着项目越来越大,项目里的依赖包也越来越多,所以打包和项目启动速度会变慢。 使用dll技术,对某些库(第三方库:jquery、react、vue...)进行单独打包 从而每次只需要打包真正的项目代码,提升了打包速度。   当你运行webpack时,默认查找webpack.config.js配置文件  需求:需要运行webpack.dll.js文件  -->webpack--configwebpack.dll.js   1.文件结构       2.安装插件,将某个文件打包输出去,并在html中自动引入该资源。 $npmiadd-asset-html-webpack-plugin@3.1.3-D复制   3.代码 manifest.json { "name":"jquery_cceadeb3136485335e4c", "content":{ "../node_modules/jquery/dist/jquery.js":{ "id":1, "buildMeta":{ "providedExports":tru

  • java集合树状结构及源码

    java集合树状结构及源码 最近一直想看一下java集合的源码,毕竟平时用的比较多,但总是感觉是跟着习惯new出来一个对象,比如ArrayList,HashMap等等,所以就简单的看了一下,了解了一下各个集合的实现的基本原理,看源码还挺费劲的,也是了解个大概意思吧,做了一下归纳和重点,留着以后看看; 集合树状结构,上图, Collection: Map: 大家自己要看的话,建议按照这个顺序来看,一个一个的去研究这些类, 自己在看的过程中做了几个word,是源码+一些重点提示,需要的看一下,有什么重要的可以一起讨论一下, java集合(之List) java集合(之Queue) java集合(之Set) java集合(之Map) @Arya0624

  • vue路由组件群

    importVuefrom'vue'importVueRouterfrom'vue-router'Vue.use(VueRouter) constfirst={template:'<div>first内容</div>'}constsecond={template:'<div>second内容</div>'}consthome={template:'<div>home内容</div>'}consthehe={template:'<div>hehe内容</div>'} constrouter=newVueRouter({mode:'history',base:__dirname,routes:[{path:'/',components:{default:home,left:first}},{path:'/first',components:{default:hehe,right:second}}]}) newVue({router,template:`<divid="r"><h

相关推荐

推荐阅读