MVG学习笔记(1) --无处不在的射影几何

2023-10-29

前言

  关于计算机视觉圣经的学习笔记。本次此系列的博文除了本次博文,基本不会包含前言了,参考书《多视图几何》第二版。

无处不在的射影几何

  我们熟悉射影变换,比如看图像,方不是方,圆并非圆.将二维对象映射成图片是射影变换的例子。

  射影变换保留了哪些属性?值得肯定的是,形状必定没有保留,所以圆可能是表现为椭圆。也不会是长度,因为通过射影变换,两个垂直的圆半径被不同的量拉伸。

  角度,距离,距离比 - 这些都不会被保留,并且可能看起来通过射影变换保留非常小的几何。

  但是,保留的属性是直线性(straightness)。

  事实证明,这是对映射的最一般要求,并且我们可以将平面的射影变换定义为保持直线的平面上的点的任何映射。

  为了了解我们为什么需要射影几何,我们从熟悉的欧几里德几何开始。

  欧几里德几何描述对象的角度和形状的几何学科。 欧几里德几何在一个主要方面是令人苦恼的- 我们需要不断推理几何的几个基本概念 - 例如线的相交

  两条线(我们在这里考虑的是二维几何)几乎总是在一个点上相交,但是有一些线不能这样做 - 那些我们称之为平行线

  解决这个问题的一个常见说法就是平行线相交于“无穷远”的点

  然而,这并不完全令人信服,并且与另一个说法相冲突,即无穷(无限)是不存在的,并且只是一个方便的虚构。

  我们可以通过增加平行线相交于无穷远处的这些点来增强欧几里得平面,并通过将它们称为“理想点”来解决无穷大的难度。

  通过在无穷远处添加这些点,熟悉的欧几里德空间被转换为一种新型的几何对象,射影空间。 这是一种非常有用的思维方式,因为我们熟悉欧氏空间的属性,涉及距离,角度,点,线和入射角(incidence)等概念。 射影空间没有什么神秘之处 - 它只是欧几里德空间的延伸,其中两条线总是在一个点上相遇,尽管有时在无穷远处的神秘点处。

坐标

  欧几里得二维空间中的一个点由有序的实数对 ( x , y ) (x,y) (x,y)表示。我们可以为这一对添加一个额外的坐标,给出一个三元组 ( x , y , 1 ) (x,y,1) (x,y,1),我们声明它们代表相同的点。这似乎无害,因为我们可以通过添加或删除最后一个坐标,从该点的一个表示返回前进到另一个表示。

  我们现在采取重要的概念步骤,询问为什么最后一个坐标需要为1 - 毕竟,其他两个坐标不是那么受约束。坐标三元组 ( x , y , 2 ) (x,y,2) (x,y,2)怎么样?在这里,我们做出一个定义,并说 ( x , y , 1 ) (x,y,1) (x,y,1) ( 2 x , 2 y , 2 ) (2x,2y,2) (2x,2y,2)代表相同的点,而且, ( k x , k y , k ) (kx,ky,k) (kx,ky,k)也代表相同的点,其中是对于任何非零值 k k k均成立。形式上,点由坐标三元组的等价类表示,其中两个三元组在它们相差一个共同倍数时是等价的。这些被称为点的齐次坐标。给定坐标三元组 ( k x , k y , k ) (kx,ky,k) (kx,ky,k),我们可以通过除以k得到原始坐标得到 ( x , y ) (x,y) (x,y)

  读者将观察到虽然 ( x , y , 1 ) (x,y,1) (x,y,1)表示与坐标对 ( x , y ) (x,y) (x,y)相同的点,但没有对应于三元组 ( x , y , 0 ) (x,y,0) (x,y,0)的点。 如果我们试图除以最后一个坐标,我们得到无限的点 ( x / 0 , y / 0 ) (x/0,y/0) (x/0,y/0), 这就是无穷远点。 它们是由齐次坐标表示的点,其中最后一个坐标为零。

  一旦我们看到如何为二维欧几里德空间做到这一点,通过将点表示为齐次向量将其扩展到射影空间,很明显我们可以在任何维度上做同样的事情。 通过将点表示为齐次向量,欧几里德空间 I R n \mathcal{\rm IR}^n IRn可以扩展到射影空间 I P n \mathcal{\rm IP}^n IPn。 事实证明,二维射影空间中无穷远处的点形成一条线,通常称为无穷远处的线。 在三维空间中,它们形成无限远的平面

齐次性

  在经典的欧几里德几何中,所有点都是相同的。 没有区别。

  整个空间是齐次的。 添加坐标时,似乎选择了一个点作为原点。 但是,重要的是要意识到这只是所选择的特定坐标系的意外。 我们也可以找到一种不同的方法来坐标化平面,其中不同的点被认为是原点。 实际上,我们可以考虑改变欧几里德空间的坐标,其中轴被平移并旋转到不同的位置。 我们可能会以另一种方式想到这一点,因为空间本身会平移并旋转到不同的位置。 产生的操作称为欧几里德变换

  更一般的变换类型是将线性变换应用于 I R n \mathcal{\rm IR}^n IRn,然后通过欧几里德变换平移空间原点。 我们可以将其视为空间移动,旋转并最终可能通过不同方向的不同比率线性拉伸。 产生的变换称为仿射变换

  欧几里德或仿射变换的结果是无穷远处的点保持在无穷远处。 通过这种变换,这些点以某种方式保留,至少作为一组。 它们在某种程度上是区分的,或者在欧几里德或仿射几何的背景下是特殊的。

  从射影几何的角度来看,无穷远处的点与其他点没有任何不同。就像欧几里德空间是一致的一样,投射空间也是如此。点的无穷大属性在齐次坐标表示中即最后一个坐标为零,只不过是坐标系选择的原因。通过类比欧几里德或仿射变换,我们可以定义射影空间的射影变换。欧几里德空间 I R n \mathcal{\rm IR}^n IRn的线性变换由应用于该点坐标的矩阵乘法表示。以相同的方式,射影空间 I P n \mathcal{\rm IP}^n IPn的射影变换是表示点 a n ( n + 1 ) {\rm an} (n+1) an(n+1)- 矢量的齐次坐标的映射,其中坐标矢量乘以非奇异矩阵。在这种映射下,无穷远处的点(最后一维坐标为零)被映射到任意其他点。无穷远处的点不会被保留。因此,射影空间 I P n \mathcal{\rm IP}^n IPn的射影变换由齐次坐标的线性变换表示.

X ′ = H ( n + 1 ) × ( n + 1 ) X X'=H_{(n+1)\times(n+1)}X X=H(n+1)×(n+1)X

  在计算机视觉问题中,通过将其扩展到三维(3D)射影空间,使得射影空间被用作表示真实3D世界的便利方式。类似地,通常通过将世界射影到二维表示上而形成的图像为了方便而扩展为被认为位于二维射影空间中。实际上,现实世界及其图像不包含无穷远处的点,我们需要将手指放在虚拟点上,即图像中无穷远处的线和世界上无限远处的平面。出于这个原因,虽然我们通常使用射影空间,但我们知道无穷远处的直线和平面在某种程度上是特殊的。这违背了纯射影几何的精神,但却使我们的实际问题变得有用。一般来说,我们试图通过将射影空间中的所有点视为对我们来说是平等的,并且在必要时,在空间中的无限远处或图像中无穷远处的平面中单独划出它。

仿射和欧几里得几何

  我们已经看到,通过在无穷远处添加线(或平面)可以从欧几里得空间获得射影空间。 我们现在考虑倒退的相反过程。 本讨论主要涉及二维和三维射影空间。

仿射几何

  我们将认为射影空间的点最初是齐次的,没有特定的坐标系是优选的。在这样的空间中,没有线的平行的概念,因为平行线(或三维情况中的平面)是在无限远处相交的线。 然而,在射影空间中,没有关于点在无穷远处的概念 - 所有点都是相等的。 我们说平行不是射影几何的概念。 谈论它毫无意义。

  为了使这样的概念有意义,我们需要选择一些特定的线,并确定这是无穷远处的线。这导致这样的情况:尽管所有点都是相等的,但是有些点比其他点更相等。

  因此,从一张白纸开始,并想象它延伸到无限并形成投射空间 I P 2 \mathcal{\rm IP}^2 IP2。我们所看到的只是空间的一小部分,看起来很像普通的欧几里德平面。

  现在,让我们在纸上画一条直线,并声明这是无穷远处的线。

  接下来,我们绘制另外两条在此显著的线上相交。

  由于它们在“无穷远线”处相交,我们将它们定义为平行。

  这种情况类似于通过观察无穷远平面所看到的情况。想想在地球非常平坦的地方拍摄的照片。平面中无穷远处的点在图像中显示为地平线。诸如铁路轨道之类的线条在图像中显示为在地平线处会合的线条。位于地平线上方的图像中的点(天空图像)显然与世界平面上的点不对应。

  但是,如果我们考虑将相应的光线向后延伸到相机后面,它将与平面相交在相机后面的某个点。因此,图像中的点与世界平面中的点之间存在一对一的关系。

  世界平面中无穷远处的点对应于图像中的真实水平线,并且世界中的平行线对应于在地平线处会合的线。

  从我们的观点来看,世界平面及其图像只是观察射影平面几何形状的另一种方式,加上一条显着的线条。

  射影平面的几何形状和区分线被称为仿射几何,并且将一个空间中的区分线映射到另一个空间的区分线的任何射影变换被称为仿射变换。。

  通过将特殊线识别为“无穷远线”,我们能够定义平面中直线的平行。 但是,只要我们可以定义平行,某些其他概念也是有意义的。 例如,我们可以定义平行线上两点之间的间隔的等式。

  例如,如果A,B,C和D是点,并且线AB和CD是平行的,那么如果线AC和BD也是平行的,则我们将两个间隔AB和CD定义为具有相等的长度。 类似地,如果在平行线上存在等于两者的另一个间隔,则同一线上的两个间隔是相等的。

  你可以想象这是平行四边形

欧几里得几何

  通过区分射影平面中的特殊线,我们获得了平行的概念和它的仿射几何。 仿射几何被视为射影几何的特化,其中我们挑出一条特定的线(或根据尺寸的平面)并将其称为无穷远处的线。

  接下来,我们转向欧几里德几何,并表明通过在仿射几何无穷远中挑出线或平面的一些特殊特征变为欧几里德几何。 在这样做的过程中,我们介绍了最重要的概念之一,即绝对的二次曲线曲线(absolute conic)

  我们首先考虑二维几何,然后从圆开始。 请注意,圆不是仿射几何的概念,因为平面的任意拉伸(将线保持在无穷远处)将圆转变为椭圆。 因此,仿射几何不区分圆和椭圆

  然而,在欧几里德几何中,它们是截然不同的,并且具有重要的区别。 代数的情况下,椭圆由二次方程描述。 因此,预期并且确实两个椭圆最通常在四个点相交。 然而,几何上显而易见的是,两个不同的圆不能在两个以上的点上相交。 在代数上,我们在这里求这两个二次曲线相交,或者等价地求解两个二次方程。 我们应该期望获得四种解决方案。 问题是,圆的特殊之处在于它们只在两点相交。

  这个问题的答案当然是存在另外两个解决方案,两个圆在另外两个复数点(complex points)上相交。 我们不必看很远就能找到这两点。

  齐次坐标 ( x , y , w ) (x,y,w) (xyw)中的圆的等式是该形式

( x − a w ) 2 + ( y − b w ) 2 = r 2 w 2 (x-aw)^2+(y-bw)^2=r^2w^2 (xaw)2+(ybw)2=r2w2

  这表示具有以齐次坐标表示的中心的圆 ( x 0 , y 0 , w 0 ) T = ( a , b , 1 ) T (x_0,y_0,w_0)^T=(a,b,1)^T (x0,y0,w0)T=(a,b,1)T。 很快证实点 ( x , y , w ) T = ( 1 , ± i , 0 ) T (x,y,w)^T=(1,\pm i,0)^T (x,y,w)T=(1,±i,0)T位于每个这样的圆上。

1 + i 2 = 0 , 是 必 然 1+i^2=0,是必然 1+i2=0,

  为了重复这个有趣的事实,每个圆都通过点 ( 1 , ± i , 0 ) T (1,\pm i,0)^T (1,±i,0)T,因此它们位于任意两个圆的交点。 由于它们的最终坐标为零,因此这两个点位于无穷远处。

  由于显而易见的原因,它们被称为平面的圆形点(虚圆点,circular points)。 注意,尽管两个圆点是复杂的,但它们满足一对实方程: x 2 + y 2 = 0 ; w = 0 x^2+y^2=0;w=0 x2+y2=0;w=0

  这个观察结果给出了我们如何定义欧氏几何的线索。 欧几里德几何来自射影几何,首先在无穷远处挑出一条直线,然后在这条线上的两个点称为虚圆点。 当然,虚圆点是复杂的点,但在大多数情况下,我们并不担心这一点。

  现在,我们可以将圆定义为通过两个虚圆点的任何二次曲线(由二次方程定义的曲线)。 注意,在标准欧几里得坐标系中,虚圆点具有坐标 ( 1 , ± i , 0 ) T ​ (1,\pm i,0)^T​ (1,±i,0)T。 然而,在将欧几里德结构分配给射影平面时,我们可以将该线上的任何线和任何两个(复杂)点分别指定为无穷远处的线和虚圆点。

  作为应用该观点的一个例子,我们注意到可以发现通过平面中的五个任意点的一般圆锥,如通过计算一般二次方程 a x 2 + b y 2 + . . . + f w 2 = 0 ax^2+by^2+...+fw^2=0 ax2+by2+...+fw2=0的系数的数量可以看出的。另一方面,圆仅由三个点定义。

  另一种看待它的方法是它是一个通过两个特殊点的圆锥曲线,即虚圆点,以及其他三个点,因此与任何其他圆锥一样,它需要五个点来唯一地指定它。

  由于挑出两个圆点,人们可以获得整个熟悉的欧氏几何形状,这一点不足为奇。 特别地,诸如角度和长度比的概念可以根据虚圆点来定义。 然而,这些概念最容易根据欧几里得平面的某些坐标系来定义,这将在后面的章节中看到。

3D欧几里得几何

  我们通过在无穷远处指定一条线和一对虚圆点来看到欧几里得平面是如何用射影平面定义的。 相同的想法可以应用于3D几何。

  在二维情况下,可以仔细观察球体以及它们如何相交。 两个球体相交成圆形,而不是像一般的四度曲线那样,如代数所暗示的那样,是两个一般的椭圆体(或其他二次曲面)。

  这一思路导致发现在齐次坐标 ( X , Y , Z , T ) T (\rm X,Y,Z,T)^T (X,Y,Z,T)T中,所有球体在无穷远处与平面相交,其方程为: X 2 + Y 2 + Z 2 = 0 ; T = 0 \rm X^2+Y^2+Z^2=0;T=0 X2+Y2+Z2=0;T=0。这是位于无穷远平面上的二度曲线(圆锥曲线,a conic),仅由复杂点组成。 它被称为绝对二次曲线(absolute conic),是关键几何实体之一,尤其是因为它与相机校准相关联,这将在后面看到。

  绝对二次曲线仅由欧几里德坐标系中的上述方程定义。 一般来说,我们可以认为3D欧几里德空间是通过将特定平面挑选为无限平面并指定位于该平面中的特定二次曲线作为绝对二次曲线而从射影空间导出的。 这些实体可以在射影空间的坐标系方面具有非常一般的描述。

  我们在此不会详细介绍绝对二次曲线如何确定完整的欧几里德三维几何。一个例子就可以了。

  空间中直线的垂直不是仿射几何中的有效概念,而是属于欧几里德几何。线的垂直可以用绝对二次曲线来定义,如下所述。

  通过延伸线直到它们与无穷远处的平面相交,我们得到两个点,称为两条线的方向。线的垂直根据两个方向与绝对二次曲线的关系来定义。如果两个方向是相对于绝对二次曲线的共轭点,则线是垂直的。
在这里插入图片描述

  共轭点的几何和代数表示在以后会讲,想提前明白请百度。简而言之,如果绝对二次曲线由3×3对称矩阵 Ω ∞ \Omega_\infty Ω表示,并且方向是点 d 1 d_1 d1 d 2 d_2 d2,则如果相对于 Ω ∞ \Omega_\infty Ω共轭则有 d 1 T Ω ∞ d 2 = 0 d_1^T\Omega_\infty d_2=0 d1TΩd2=0。更一般地,角度可以根据任意坐标系中的绝对二次曲线来定义,如下所表示的。

cos ⁡ θ ( d 1 T Ω ∞ d 2 ) ( d 1 T Ω ∞ d 1 ) ( d 2 T Ω ∞ d 2 ) \cos \theta \frac{(d_1^T\Omega_\infty d_2)}{\sqrt{(d_1^T\Omega_\infty d_1)(d_2^T\Omega_\infty d_2)}} cosθ(d1TΩd1)(d2TΩd2) (d1TΩd2)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MVG学习笔记(1) --无处不在的射影几何 的相关文章

  • CSS——position属性

    absolute 生成绝对定位的元素 相对于 static 定位以外的第一个父元素进行定位 元素的位置通过 left top right 以及 bottom 属性进行规定 父元素必须有relative absolute才可以 fixed 生
  • 用数据告诉你出租车资源配置是否合理

    互联网 下不同时空如何建立合适的指标分析出租车 供求匹配 的程度 由于出租车供求匹配 以及一系列的补贴方案涉及到可行性的问题 我们采用出租车轨迹数据做出相应的解答 出租车上下客高峰期 查看不同城市的出租车上下客高峰期的时间段 从深圳市的上下
  • 【每日一题】最大利润 -python

    题目描述 商人经营一家店铺 有number种商品 由于仓库限制每件商品的最大持有数量是item index 每种商品价格是item price item index day 通过对商品的买进和卖出获取利润 请给出商人在days天内能获取的最
  • 性能测试指标(一)

    介绍性能测试的教程和文章比较多 总结性能测试的指标为多 快 好 省 多 并发数量 快 延时 响应时间 好 长时间运行 省 资源使用率 在介绍吞吐量直接先从几个大家熟知的概念说起 1 响应时间 响应时间为各个时间段往返时间之和 包括 用户客户
  • 打卡:4.9 C语言篇 -(1)初识C语言 - (5)字符串-转义字符-注释

    C语言篇 1 初识C语言 5 字符串 转义字符 注释 简介 纠正 字符串 转义字符 注释 简介 大家好 我是小奔 每天一笔记 从最基础开始写 展现我自己学习过程 如果感觉不错 就点一下关注啦 纠正 字符串 这一篇博客我们来了解一下字符串 看
  • PhalApi+Gearman,接口MQ异步队列任务的完整开发教程

    MQ异步队列 在API接口同步请求过程中 不适合处理耗时过长 或者一直轮询的工作 此时 可以结合MQ异步队列任务进行后台处理 MQ异步队列服务 Gearman 关于异步队列服务有很多种 这里PhalApi选择使用了Gearman 它的特点是
  • js判断数组中重复元素并找出_JavaScript检查数据中是否存在相同的元素(两种方法)...

    这里是两个用于数组中查找重复元素的demo 可以看看啦Title 获取 方法一 var arr1 11 22 33 44 var arr new Array arr1 Array prototype in array function e
  • 分治法

    简介 对于一个规模为n的问题 若该问题可以容易地解决 比如说规模n较小 则直接解决 否则将其分解为k个规模较小的子问题 这些子问题互相独立且与原问题形式相同 递归地解这些子问题 然后将各子问题的解合并得到原问题的解 这种算法设计策略叫做分治
  • nginx访问静态文件不下载

    1 什么是MIME TYPE MIME Multipurpose Internet Mail Extension 多用途因特网邮件扩展 最初是为了满足电子邮件支持多字符集及附件而出现的 MIME Type 不是个人指定的 是经过 ietf
  • oracle exec报错,VNCSERVER 重启后突然报错:ExecStart=usrbinvncserver_wrapper oracle %i (code=exited, status=2)...

    VNCSERVER 重启后突然报错 ExecStart usr bin vncserver wrapper oracle i code exited status 2 root ykt systemctl restart vncserver
  • 深入学习jquery源码之map()

    概述 将一组元素转换成其他数组 不论是否是元素数组 你可以用这个函数来建立一个列表 不论是值 属性还是CSS样式 或者其他特别形式 这都可以用 map 来方便的建立 参数 callback 给每个元素执行的函数 把form中的每个input
  • C++累加求和 (阶乘)

    include
  • open3d学习教程2--点云1

    目录 1 open3d介绍 2 点云 2 1 读取 可视化点云 2 2点云体素下采样 2 3点法线估计 2 4点云着色 1 open3d介绍 接着上一节点云pointcloud open3d是一个开源库 支持快速处理3d数据 比如点云 体素
  • Mysql文件导出数据库,以及Linux中导入数据库

    1 导出命令mysqldump u root p test gt test sql 2 上传到linux服务器上 3 导入数据库文件 4 进入linux中的mysql 5 创建数据库ssm 6 source sql文件的路径名称 7 打包s
  • 最小二乘法构建线性回归方程

    目录 一 相关数学知识的定义 1 1 一元线性回归的定义 1 2 相关系数R 的定义 二 使用jupyter来做一元线性回归分析 2 1 根据最小二乘法公式手动构建一元线性回归模型 2 2 调用包实现一元线性回归模型 三 用excel进行一

随机推荐

  • Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(一)

    Three js实例详解 旋转的精灵女孩 附完整代码和资源 一 本文目录 一 旋转的精灵女孩 案例运行效果 二 Three js简介 三 Three js代码正常运行显示条件 1 不载入任何纹理贴图的网页 2 从外部文件里载入几何体或是纹理
  • 五、java代码实现快速排序

    快速排序思路 每一轮排序选择一个基准点进行分区 让小于基准点的元素进入一个分区 大于基准点的元素进入另一个分区 当分区完成时 基准点元素的位置就是其最终的位置 在子分区内重复以上过程 直至子分区元素个数少于等于1 分治算法 代码实现 单边循
  • Redis常用value命令

    本文是根据B站大学动力节点课程总结而来 原视频请移步至Redis7 033 ZSet型value操作命令 2 哔哩哔哩 bilibili PS 其中的某个视频音画不同步 redis中的value类型有五种 分别是String 字符串类型 H
  • LC-3汇编语言求成绩等级

    题目描述 背景 16名学生成绩排序 及统计分析 成绩分类规则 A 全班排名前25 且成绩在85分及以上 B 非A成绩 全班排名前50 且成绩在75分及以上 C 非A B成绩 要求 使用LC 3汇编语言 编写程序实现以上功能 输入 16名学生
  • C#面向对象编程

    面向对象 C 不是一种纯粹的面向对象编程语言 它提供了多种编程范式 但是 面向对象是C 的一个重要概念 也是 NET 提供的所有库的核心原则 面向对象的三个最重要的概念是继承 封装和多态性 本章将介绍如何使用继承增强基类型 如何创建类层次
  • kafka应用问题

    1 问题一 Connection to node 2 could not be established Broker may not be available 解决办法 1 检查防火墙是否开放相关端口 2 如果是部署在云服务器 检查云服务器
  • C++ 拷贝(复制)构造函数

    拷贝构造函数用以将一个类的对象拷贝给同一个类的另一个对象 比如之前学习过的string类 string s1 string s2 s1 一般情况下的拷贝构造函数 class A private int n double d char s p
  • 小梅哥Xilinx FPGA学习笔记6——参数化设计及模块重用设计流水灯(跑马灯)

    参数化设计及模块重用设计流水灯 功能介绍 1 功能描述 一 代码编写 1 设计文件 2 激励文件 3 仿真图 二 总结 功能介绍 1 功能描述 8个Led灯以0 5s的的速率循环闪烁 参数化设计并且调用三八译码器模块完成该设计 三八译码器模
  • TCP/IP详解 卷1:协议 学习笔记 第六章 ICMP:Internet控制报文协议

    ICMP是IP层的组成部分 用来传递差错报文和其他需要注意的信息 它通常被更高层的协议 TCP UDP 使用 一些ICMP报文把差错返回给用户进程 类型字段可以有15个不同值 用来描述ICMP报文的类型 某些ICMP还使用代码字段的值进一步
  • 【BZOJ 4069】 [Apio2015]巴厘岛的雕塑

    4069 apio2015 巴厘岛的雕塑 Time limit 1000 ms Memory limit 65536 KB Description The province of Bali has many sculptures locat
  • QSharedMemory

    来源 https www devbean net 2013 11 qt study road 2 ipc Qt 提供了四种进程间通信的方式 1 使用共享内存 shared memory 交互 这是 Qt 提供的一种各个平台均有支持的进程间交
  • 难解的AIoT焦虑,华为是否在准备一剂特效药存在?

    几个月前有朋友问我 AIoT到底是什么 跟说了好多年的IoT有什么不同 我是这么回答的 想一想有台空调 可以手机来操控它打开和关闭 你想买不 我家的空调现在就可以 可是从来没用过手机操作 遥控器就在茶几上触手可得 打开手机找到APP再操作太
  • redis详解(二)—— 数据类型详解

    Redis常用数据类型详解 1 Redis最为常用的数据类型主要有以下 String Hash List Set Sorted set pub sub Transactions 在具体描述这几种数据类型之前 我们先通过一张图了解下Redis
  • 信号量与共享内存实现进程间通信(生产者消费者问题为例)

    一 信号量 信号量是IPC的一种 可以看做是一个计数器 计数值为可用的共享资源的数量 信号量可用于多进程的同步 为多个进程提供对共享资源的访问 linux下的信号量的接口函数如下 1 获取信号量 int semget key t key i
  • 学习心得_我的算法学习心得

    关于 严格来说 本文题目应该叫作 我的数据结构和算法面试学习心得 但这个写法实在太绕口 所以干脆叫 我的算法学习心得 希望对大家有帮助 需要说明下 本文主要是应对面试的算法学习 这篇文章讲了什么 对于算法的认知 算法的方法总结 小结 算法的
  • 解决python3 pkl文件打印出的数组有省略号的问题(numpy, pytorch)

    问题描述 python3 load了pkl文件后 发现打印出来的数组有省略号 不能用于继续的计算和操作 import pickle with open filename pkl rb as f data pickle load f prin
  • 'chcp' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 'cmd' 不是内部或外部命令,也不是可运行的...

    打开anaconda promp 提示 chcp 不是内部或外部命令 也不是可运行的程序 或批处理文件 cmd 不是内部或外部命令 也不是可运行的 解决办法 我在安装Anaconda是默认添加了环境变量 此时需要在环境变量的系统变量的pat
  • 经典网络VGGNet介绍

    经典网络VGGNet 其中VGG为Visual Geometry Group 由Karen Simonyan等于2014年提出 论文名为 Very Deep Convolutional Networks for Large Scale Im
  • oracle expdp导出时报 ora-39070:无法打开日志文件

    在通过expdp导出命令导出某个用户的对象时出现以下截图错误 ORA 39002 操作无效 ORA 39070 无法打开日志文件 ORA 39087 目录名
  • MVG学习笔记(1) --无处不在的射影几何

    文章目录 前言 无处不在的射影几何 坐标 齐次性 仿射和欧几里得几何 仿射几何 欧几里得几何 3D欧几里得几何 前言 关于计算机视觉圣经的学习笔记 本次此系列的博文除了本次博文 基本不会包含前言了 参考书 多视图几何 第二版 无处不在的射影