watermark

OpenCV开发笔记(六十八):红胖子8分钟带你使用特征点Flann最邻近差值匹配识别(图文并茂+浅显易懂+程序源码)

▼魔方 西西 提交于 2020-08-14 01:49:24
若该文为原创文章,未经允许不得转载 原博主博客地址: https://blog.csdn.net/qq21497936 原博主博客导航: https://blog.csdn.net/qq21497936/article/details/102478062 本文章博客地址: https://blog.csdn.net/qq21497936/article/details/107357296 各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中...(点击传送门) OpenCV开发专栏(点击传送门) 上一篇:《 OpenCV开发笔记(六十七):红胖子8分钟带你深入了解特征点暴力匹配(图文并茂+浅显易懂+程序源码) 》 下一篇:持续补充中… <br> 前言   红胖子,来也!   前面讲解了特征点,那么匹配特征点,就是匹配两者的相似度,相似度达到一定的阈值,则认为识别了。   考虑性能,除开暴力匹配外,还有最近邻匹配。 <br> Demo             <br> 最近邻匹配(FLANN)   FlannBasedMatcher中FLANN的含义是Fast Library forApproximate

TCP的三次握手与四次挥手理解及面试题(很全面)

假如想象 提交于 2020-08-13 19:49:20
本文经过借鉴书籍资料、他人博客总结出的知识点,欢迎提问 序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。 确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接收到下一个字节的编号;因此当前报文段最后一个字节的编号+1即为确认号。 确认ACK:占1位,仅当ACK=1时,确认号字段才有效。ACK=0时,确认号无效 同步SYN:连接建立时用于同步序号。当SYN=1,ACK=0时表示:这是一个连接请求报文段。若同意连接,则在响应报文段中使得SYN=1,ACK=1。因此,SYN=1表示这是一个连接请求,或连接接受报文。SYN这个标志位只有在TCP建产连接时才会被置1,握手完成后SYN标志位被置0。 终止FIN:用来释放一个连接。FIN=1表示:此报文段的发送方的数据已经发送完毕,并要求释放运输连接 PS:ACK、SYN和FIN这些大写的单词表示标志位,其值要么是1,要么是0;ack、seq小写的单词表示序号。 字段 含义 URG 紧急指针是否有效。为1,表示某一位需要被优先处理 ACK 确认号是否有效,一般置为1。 PSH

JVM详解之:java class文件的密码本

|▌冷眼眸甩不掉的悲伤 提交于 2020-08-13 14:18:09
简介 一切的一切都是从javac开始的。从那一刻开始,java文件就从我们肉眼可分辨的文本文件,变成了冷冰冰的二进制文件。 变成了二进制文件是不是意味着我们无法再深入的去了解java class文件了呢?答案是否定的。 机器可以读,人为什么不能读?只要我们掌握java class文件的密码表,我们可以把二进制转成十六进制,将十六进制和我们的密码表进行对比,就可以轻松的解密了。 下面,让我们开始这个激动人心的过程吧。 一个简单的class 为了深入理解java class的含义,我们首先需要定义一个class类: public class JavaClassUsage { private int age=18; public void inc(int number){ this.age=this.age+ number; } } 很简单的类,我想不会有比它更简单的类了。 在上面的类中,我们定义了一个age字段和一个inc的方法。 接下来我们使用javac来进行编译。 IDEA有没有?直接打开编译后的class文件,你会看到什么? 没错,是反编译过来的java代码。但是这次我们需要深入了解的是class文件,于是我们可以选择 view->Show Bytecode: 当然,还是少不了最质朴的javap命令: javap -verbose JavaClassUsage 对比会发现

小师妹学JVM之:JIT中的LogCompilation

自闭症网瘾萝莉.ら 提交于 2020-08-13 10:38:34
简介 我们知道在JVM中为了加快编译速度,引入了JIT即时编译的功能。那么JIT什么时候开始编译的,又是怎么编译的,作为一个高傲的程序员,有没有办法去探究JIT编译的秘密呢?答案是有的,今天和小师妹一起带大家来看一看这个编译背后的秘密。 更多精彩内容且看: 区块链从入门到放弃系列教程-涵盖密码学,超级账本,以太坊,Libra,比特币等持续更新 Spring Boot 2.X系列教程:七天从无到有掌握Spring Boot-持续更新 Spring 5.X系列教程:满足你对Spring5的一切想象-持续更新 java程序员从小工到专家成神之路(2020版)-持续更新中,附详细文章教程 LogCompilation简介 小师妹:F师兄,JIT这么神器,但是好像就是一个黑盒子,有没有办法可以探寻到其内部的本质呢? 追求真理和探索精神是我们作为程序员的最大优点,想想如果没有玻尔关于原子结构的新理论,怎么会有原子体系的突破,如果没有海森堡的矩阵力学,怎么会有量子力学的建立? JIT的编译日志输出很简单,使用 -XX:+LogCompilation就够了。 如果要把日志重定向到一个日志文件中,则可以使用-XX:LogFile= 。 但是要开启这些分析的功能,又需要使用-XX:+UnlockDiagnosticVMOptions。 所以总结一下,我们需要这样使用: -XX:

Google确认Chrome存在严重漏洞,向20亿用户发出警告:你们需立即更新浏览器

我的未来我决定 提交于 2020-08-13 10:27:01
近日,Google面向二十亿Chrome浏览器用户推出至关重要的补丁程序,并再次强调大家需要立即更新其浏览器。 如果你在Mac,Windows 10或Linux计算机上使用的是Google Chrome浏览器,则需要立即通过更新浏览器版本来安装新的安全补丁。 据安全专家称, 浏览器中的新漏洞可能会影响超过20亿用户 。 这起严重的安全漏洞事件的来龙去脉还要追溯到上个月中旬。 4月份的时候,专注于网络安全的技术支持网站Sophos发布了一篇报告,提到Google悄悄更新了Chrome浏览器相关的一项警告。 根据Google的该博客表示,Chrome浏览器在Windows,Mac和Linux上发现了一个新的安全漏洞, 编号为代号(CVE-2020-6457) ,其标记为“严重”。 Google表示,该漏洞已修复并敦促用户升级到最新版本的浏览器。 Sophos称,有趣的是,在这个浏览器版本发布之时,Google始终没有透露有关该漏洞的确切细节。 再加上Chrome几乎每一次更新都与修复安全漏洞有关,因此这一次的小版本更新并没有引起大家的注意。 相信屏幕前的大家想法可能都是一样的——等到Chrome 82版本发布了我再一起更新,我不急。 与普通用户不同,Sophos作为一家网络安全技术网站,自然对这个Google想就此掩盖过去的漏洞起了疑心。 Sophos称

Java知识回顾-基础知识(3)

北城以北 提交于 2020-08-13 08:55:58
1.异常 Error/错误, 是程序无法处理的错误,通常和代码执行者的操作无关,在应用程序的控制和处理能力之外 Exception/异常, 是程序本身可以处理的异常 RuntimeException是Exception的一个重要子类,由jvm抛出 异常能被程序本身处理,而错误无法处理 Throwable 常用的方法 public String getMessage()返回异常发生时的简要信息 public String toString() 返回异常发生时的详细信息 public void printStackTrace() 在控制台打印Throwable对象封装的一场新 异常处理 使用try-catch-finally来扑获异常 try语句 用来扑获异常,后边可以0个或者多个catch块, 如果没有catch块则必须根一个finally catch语句 用来处理try扑获到的异常 finally 语句 无论是扑获/处理异常,finally的语句都会被执行,当try或者catch中有return语句 ,finally的语句块将在方法返回前执行,如果finally中也有return 语句 则会覆盖 try/catch中的return finally不执行: 1,在finally语句块的第一场发生异常 2,在finllay语句之前发生了System.exit(int),程序退出.

多图对比,项目经理和产品经理的区别

夙愿已清 提交于 2020-08-13 08:37:16
关于产品经理与项目经理的区别,彷佛散落在海边的一枚枚贝壳。它们是无数PM通过大量的工作和学习经验总结出来的。 它们能让徘徊在产品经理与项目经理之间的同学找到方向,完成职场转型蜕变。而环环此次只是在海边捡贝壳的孩子,致力于将这些智慧整理起来,造福广大圈内人。 产品vs项目 亲妈vs奶妈 周期vs阶段 上帝vs爸爸 想vs做 主外vs主内 赚钱vs做事 点子vs项目 设计vs开发 横向vs纵向 能力的区别 成功标准的区别 从上面这些图中,我们可以看出,项目生命周期是产品生命周期的一部分。 因此,作为一名项目经理,也必然不能只着眼于眼前的项目,纵观全局、具备产品思维是一个优秀的项目经理必须要做的事情。 合理并且有效地运用 项目管理软件 ,不仅可以让我们工作井然有序地进行,还能最大程度保证项目目标的达成。我推荐使用 CORNERSTONE ,它提供了包括任务/需求/测试管理、迭代规划、缺陷追踪、报表统计、团队协作、WIKI、共享文件和日历等功能模块,现在申请20人以下团队即可免费使用。 来源: oschina 链接: https://my.oschina.net/u/4151150/blog/4314571

Oracle 中总计和小计使用的函数

五迷三道 提交于 2020-08-13 08:14:54
@[TOC](总计和小计、逐行累计求和) ### 一、总计和小计使用函数 #### 1、rollup group by 我们都知道,是一个分组函数,用于针对某一列做分组操作。 但是当它搭配其他的函数一起使用的时候,就像一对男女孩,撞出不一样的火花。 ==rollup(字段1,字段2,.....) rollup和group by一起使用,可以针对每一个分组返回一个小计行,以及为所有的分组返回一个总计行(一个字段就是返回总计行,多个字段就是返回每一个分组的一个小计行和一个总计行)== 实践是检验真理的唯一标准,那我们来实践一下,我们先来快速创建一个表。有多快,很快很快的那种。 ```handlebars CREATE TABLE EMP ( "EMPNO" NUMBER(4) NOT NULL , "ENAME" VARCHAR2(10 BYTE) , "JOB" VARCHAR2(9 BYTE) , "SAL" NUMBER(7,2) , "DEPTNO" NUMBER(2) ) INSERT INTO "SCOTT"."EMP" VALUES ('1', '张三', '开发', '10000', '10'); INSERT INTO "SCOTT"."EMP" VALUES ('2', '李四', '运维', '6000', '20'); INSERT INTO "SCOTT".

为什么国内流行的 MyBatis ,国外 Java 工程师却不愿意使用?

点点圈 提交于 2020-08-13 06:09:44
Spring 团队的Josh Long自己在Twitter上做了一个调查。1625次投票,样本量不算大,但也能说明问题。和我答案最后的那些调查图表基本一致。 我们看一下Google Trends的数据: 搜索条件是这样的: World Wide: United States: France: India: Canada: China: Japan: 其他英文技术网站上的多个统计: 再看看Stack Overflow上的问题数: (含有hibernate的标签和问题数) (含有mybatis的标签和问题数) 下面是我个人的观点: 其实十年前我们主要使用的ORM框架就是iBatis,而阿里巴巴是对国内Java开发者影响最大的一家公司。阿里在国内Java社区的影响力有目共睹,这个大家应该都能感受到, 阿里对Java社区贡献了很多实用的开源工具,并且国内Java开发者对于阿里开源的产品接纳程度也最高。 而且早期阿里系离职工程师的影响力也不可小觑,这些从阿里离职的工程师进入了各个规模的公司, 通常也有担任较高的职位, 拥有着相对较多的话语权, 在新公司继续使用自己熟悉的iBatis就是再正常不过的了。 MyBatis封装较少,提供的切入点较多,适合进行架构。遇到超级复杂的场景的时候有不错的sql支持。曾经JPA适合做增删改,mybatis只擅长查询,但是现在的tk

12个月大厂主机免费领AWS Azure Google-Cloud还不快到碗里来

筅森魡賤 提交于 2020-08-13 04:03:57
简介 最近有个朋友问我哪里有免费主机可以领,说实话这个问题也困扰了我很久,之前也在网上寻找免费主机,可是免费的基本上都有一定的限制,用起来实在是不尽如人意,但是不怕。随着云技术的发展,国外的优秀大厂例如微软,亚马逊,Google等等都退出了一波优秀的免费主机策略,只要注册就能免费用12个月。配置也不差,基本上都是1核2G的机子,小伙伴门拿来练练手,部署下程序,不香吗? 除了免费的主机,其实还有其他的很多云服务,有兴趣的小伙伴可以自行探索。 有些小伙伴问了,为什么不提Oracle?作为一名前Oracle员工,对Oracle实在是又爱又恨,这个在本文的最后来讲解吧。 又有小伙伴要问了,那国内的云厂商呢?阿里云,腾讯云,华为云有没有免费的午餐呀?这个我可以很明确的告诉你,真没有.... 接下来,我们要开始薅资本主义的大羊毛了。 更多精彩内容且看: 区块链从入门到放弃系列教程-涵盖密码学,超级账本,以太坊,Libra,比特币等持续更新 Spring Boot 2.X系列教程:七天从无到有掌握Spring Boot-持续更新 Spring 5.X系列教程:满足你对Spring5的一切想象-持续更新 java程序员从小工到专家成神之路(2020版)-持续更新中,附详细文章教程 AWS AWS亚马逊云大家应该都听过吧,那可是全球排名第一的云厂商。为了免打广告的嫌疑,这里就不贴出AWS的地址了