h264-运动估计和运动补偿理论

2023-10-27

定义
  运动补偿是通过先前的局部图像来预测、补偿当前的局部图像,它是减少帧序列冗余信息的有效方法。

MPEG-4采用I-VOP、P-VOP、B-VOP三种帧格式来表征不同的运动补偿类型。它采用了H.263中的半像素搜索(half pixel searching)技术和重叠运动补偿(overlapped motion compensation)技术,同时又引入重复填充(repetitive padding)技术和修改的块(多边形)匹配(modified block (polygon)matching)技术以支持任意形状的VOP区域


运动补偿包括全局运动补偿分块运动补偿两类。  运动补偿是一种描述相邻帧(相邻在这里表示在编码关系上相邻,在播放顺序上两帧未必相邻) 差别的方法,具体来说是描述前面一帧(相邻在这里表示在编码关系上的前面,在播放顺序上未必在当前帧前面)的每个小块怎样移动到当前帧中的某个位置去。这种方法经常被视频压缩/视频编解码器用来减少视频序列中的空域冗余。它也可以用来进行去交织(deinterlacing)的操作。  一个视频序列包含一定数量的图片--通常称为帧。相邻的图片通常很相似,也就是说,包含了很多冗余。使用运动补偿的目的是通过消除这种冗余,来提高压缩比。

每组的第一帧(通常是第一帧)在编码的时候不使用运动估计的办法,这种帧称为帧内编码帧(Intra frame)或者I帧。该组中的其它帧使用帧间编码帧(Inter frame),通常是P帧。这种编码方式通常被称为IPPPP,表示编码的时候第一帧是I帧,其它帧是P帧。  在进行预测的时候,不仅仅可以从过去的帧来预测当前帧,还可以使用未来的帧来预测当前帧。当然在编码的时候,未来的帧必须比当前帧更早的编码,也就是说,编码的顺序和播放的顺序是不同的。通常这样的当前帧是使用过去和未来的I帧或者P帧同时进行预测,被称为双向预测帧,即B帧。这种编码方式的编码顺序的一个例子为 IBBPBBPBBPBB。

全局运动补偿
  运动模型基本上就是反映摄像机的各种运动,包括平移,旋转,变焦等等。这种模型特别适合对没有运动物体的静止场景的编码。全局运动补偿有下面的一些优点:  该模型仅仅使用少数的参数对全局的运行进行描述,参数所占用的码率基本上可以忽略不计。  该方法不对帧进行分区编码,这避免了分区造成的块效应。  在时间方向的一条直线的点如果在空间方向具有相等的间隔,就对应了在实际空间中连续移动的点。其它的运动估计算法通常会在时间方向引入非连续性。  但是,缺点是,如果场景中有运动物体的话,全局运动补偿就不足以表示了。这时候应该选用其它的方法。
分块运动补偿
  每帧被分为若干像素块 (在大多数视频编码标准,如MPEG中,是分为16x16的像素块)。从参考帧的某个位置的等大小的块对当前块进行预测,预测的过程中只有平移,平移的大小被称为运动矢量。  对分块运动补偿来说,运动矢量是模型的必要参数,必须一起编码加入码流中。由于运动矢量之间并不是独立的(例如属于同一个运动物体的相邻两块通常运动的相关性很大),通常使用差分编码来降低码率。这意味着在相邻的运动矢量编码之前对它们作差,只对差分的部分进行编码。使用熵编码对运动矢量的成分进行编码可以进一步消除运动矢量的统计冗余(通常运动矢量的差分集中于0矢量附近)。  运动矢量的值可以是非整数的,此时的运动补偿被称为亚像素精度的运动补偿。这是通过对参考帧像素值进行亚像素级插值,而后进行运动补偿做到的。最简单的亚像素精度运动补偿使用半像素精度,也有使用1/4像素和1/8像素精度的运动补偿算法。更高的亚像素精度可以提高运动补偿的精确度,但是大量的插值操作大大增加了计算复杂度。
缺点
  分块运动补偿的一个大缺点在于在块之间引入的非连续性,通常称为块效应。当块效应严重时,解码图像看起来会有像马赛克一样的效果,严重影响视觉质量。另外一个缺点是,当高频分量较大时,会引起振铃效应。关于高频分量,请参见对运动补偿后的残差进行变换的方法: 变换编码。


在块匹配法中,重点研究块匹配准则搜索方法

目前有三种常用的匹配准则:

   

运动估计

两帧之间的物体运动是平移运动,位移量不是很很大,所以会以块作为单位分配运动矢量,在运动估计中采用了大量的参考帧预测来提高精度,当前的待编码块可以在缓存内的所有重建帧中寻找最优的匹配块进行运动补偿,以便很好的去除时间域的冗余度。为每一个块寻求一个运动矢量MV,并进行运动补偿预测编码。在每个分割区域中都有其对应的运动矢量,并对运动矢量以及块的选择方式进行编码和传输。
运动估计ME所表达的运动矢量MV,其研究的内容就是如何加速,有效的获得足够精确的mv,并且把前一帧所得的运动信息通过运动补偿MC来进行变换,量化编码,最后输出。

MV:运动向量,参考帧中相对于当前帧的偏移
MVp:参考运动向量
MVD:两个向量间的差别

提高运动估计算法的效率的主要技术有:初始搜索点的选择,匹配准则,和运动搜索策略。
1.运动估计初始点的搜索:
1)直接选择参考帧对应块的中心位置,这种方法简单,但容易陷入局部最优点,如果初始的步长太大,而原点(指待搜索块的中心点在参考帧中的相同位置的对应点)不是最优点时候,可能使快速搜索跳出原点周围的区域,而去搜索较远的点,导致搜索方向的不确定性,陷入局部最优。
2)选择预测的起点,以预测点作为搜索的起点,x264采用的将运动估计矢量和参考帧的左边,上边和右上边的MB的中值MV作为起点进行ME。
2. 匹配准则,
x264中所采用的匹配准则是SAD,SATD. SAD 

其余一些准则:

 (1)绝对误差和(SAD, Sum of Absolute Difference)准则;

 (2)均方误差(MSE, Mean Square Error)准则;

 (3)归一化互相关函数(NCCF, Normalized Cross Correlation Function)准则。


即绝对误差和,仅反映残差时域差异,影响PSNR值,不能有效反映码流的大小。SATD即将残差经哈德曼变换的4×4块的预测残差绝对值总和,可以将其看作简单的时频变换,其值在一定程度上可以反映生成码流的大小。因此,不用率失真最优化时,可将其作为模式选择的依据。
一般帧内要对所有的模式进行检测,帧内预测选用SATD.在做运动估计时,一般而言,离最优匹配点越远,匹配误差值SAD越大,这就是有名的单一平面假设,现有的运动估计快速算法大都利用该特性。但是,转换后 SATD值并不满足该条件,如果在整象素中运用SATD搜索,容易陷入局部最优点。而在亚象素中,待搜索点不多,各点处的SAD差异相对不大,可以用 SATD选择码流较少的匹配位置。
3.运动搜索策略
x264所采用的运动搜索策略(对应的最后面的程序中有描述):
#define X264_ME_DIA                                   0 //钻石搜索
#define X264_ME_HEX                                   1 //六边形所搜
#define X264_ME_UMH                                   2 //非对称十字六边形网络搜索
#define X264_ME_ESA                                   3 //全搜索
#define X264_ME_TESA                                 4 //hadamard 全搜索法,这个算法和ESA相比主要是在搜索范围上的变化

运动矢量在时空域的预测方式

  如果对每个块的运动矢量进行编码,那么将花费相当数目的比特数,特别是如果选择小尺寸的

  块的时候。由于一个运动物体会覆盖多个分块,所以空间域相邻块的运动矢量具有很强的相关性,

  因此,每个运动矢量可以根据邻近先前已编码的块进行预测,预测得到的运动矢量用 MVp 表示,当

  前矢量和预测矢量之间的差值用 MVD 表示。同时由于物体运动的连续性,运动矢量在时间域也存

  在一定相关性,因此也可以用邻近参考帧的运动矢量来预测。

  1) 运动矢量空间域预测方式

  a、运动矢量中值预测(Median Prediction)

  利用与当前块 E 相邻的左边块 A,上边块 B 和右上方的块 C 的运动矢量,取其中值来作为当前

  块的预测运动矢量。

  设 E 为当前宏块、宏块分割或者亚宏块分割, A 在 E 的左侧,B 在 E 的上方、C 在 E 的右上

  方,如果 E 的左侧多于一个块,那么选择最上方的块作为 A,在 E 的上方选择最左侧的块作为 B。

  图 3.18 表示所有的块尺寸相同,图 3.19 表示邻近块尺寸不同时作为预测 E 的运动矢量的块的选择。

  在预测 E 的过程中遵守以下准则:

  1、对于除了块尺寸为 16×8和 8×16 的块来说,MVp是块 A、B 和 C 的运动矢量的中值;

  2、 对于 16×8 块来说, 上方的 16×8 块的MVp 根据B预测得到, 下方的 16×8 块的 MVp 根据 A

  得到;

  3、 对于 8×16 块来说, 左侧的 16×8 块的MVp 根据 A预测得到, 右侧的 16×8 块的 MVp 根据 C

  得到;

  4、对于不用编码的可跳过去的宏块,16×16 矢量MVp 如第一种情况得到。

  2) 运动矢量在时间域预测方式

  a、前帧对应块运动矢量预测(Corresponding-block Prediction)

  利用前一帧的与当前块相同坐标位置的块的运动矢量来作为当前块的预测运动矢量

  所示。

  b、时间域的邻近参考帧运动运动矢量预测(Neighboring Reference-frame Prediction)

  由于视频序列的连续性,当前块在不同的参考帧中的运动矢量也是有一定的的相干性的假设当前块所在帧的时间为 t,则当在前面的参考帧 t’中搜索当前块的最优匹配块时,可

  以利用当前块在参考帧 t’+1 中的运动矢量来估测出当前块在帧他 t’的运动矢量:

  在上述运动矢量的四种预测方式中,经过实验证明,空间域的预测更为准确,其中上层块预测

  的性能最优,因为其充分利用了不同预测块模式运动矢量之间的相关性。而中值预测性能随着预测

  块尺寸的减小而增加,这是因为当前块尺寸越小,相关性越强。


运动搜索算法

  匹配误差函数,可以用各种优化方法进行最小化,这就需要我们开发出高效的运动搜索算法,

  主要的几种算法归纳如下:

全局搜索算法

  为当前帧的一个给定块确定最优位移矢量的全局搜索算法方法是:在一个预先定义的搜索区域

  内,把它与参考帧中所有的候选块进行比较,并且寻找具有最小匹配误差的一个。这两个块之间的

  位移就是所估计的 MV,这样做带来的结果必然导致极大的计算量。


分数精度搜索算法

  由于在穷尽块匹配算法中搜索相应块的步长不一定是整数,一般来说,为了实现 1/K像素步长,

  对参考帧必须进行 K倍内插。与整像素精度搜索相比,半像素精度搜索在估计精度上有很大提高,特别是对于低清晰度视频。

  但是,应用分数像素步长,搜索算法的复杂性大大增加,例如,使用半像素搜索,搜索点的总

  数比整数像素精度搜索大四倍以上。

  那么,如何确定适合运动估计的搜索步长,对于视频编码的帧间编码来说,即使得预测误差最

  小化


 快速搜索算法

  快速搜索算法和全局搜索算法相比,虽然只能得到次最佳的匹配结果,但在减少运算量方面效

  果显著。

  1)二维对数搜索法

  这种算法的基本思路是采用大菱形搜索模式和小菱形搜索模式,从相应

  于零位移的位置开始搜索,每一步试验菱形排列的五个搜索点。下一步,把中心移到前一步找到的

  最佳匹配点并重复菱形搜索。当最佳匹配点是中心点或是在最大搜索区域的边界上时,就减小搜索

  步长(菱形的半径)。否则步长保持不变。当步长减小到一个像素时就到达了最后一步,并且在这最

  后一步检验九个搜索点。初始搜索步长一般设为最大搜索区域的一半。

  其后这类算法在搜索模式上又做了比较多的改进,在搜索模式上采用了矩形模式,还有六

  边形模式、十字形模式等等。

  2)三步搜索法

  这种搜索的步长从等于或者略大于最大搜索范围的一半开始。第一步,在起始

  点和周围八个 “1”标出的点上计算匹配误差,如果最小匹配误差在起始点出现,则认为没有运动;

  第二步,以第一步中匹配误差最小的点(图中起始点箭头指向的“1”)为中心,计算以“2”标出的 8

  个点处的匹配误差。注意,在每一步中搜索步长搜都比上一步长减少一半,以得到更准确的估计;

  在第三步以后就能得到最终的估计结果,这时从搜索点到中心点的距离为一个像素。

  但是,上述一些快速算法更适合用于估计运动幅度比较大的场合,对于部分运动幅度小的场

  合,它们容易落入局部最小值而导致匹配精度很差,已经有很多各种各样的视频流证明了这一点。

  现在,针对这一缺点,国内外诸多专家学者也提出了相应的应对措施,特别是针对H.264编

  码标准要求的一些快速算法的改进,并取得卓越的效果。这种算法通过在每一搜索步骤选择多个搜索结果,基于这些搜索结果之间的

  匹配误差的不同得到的最佳搜索点,因而可以很好地解决落入局部最小值的问题。

  [8]中提到一种适用于H.264的基于自适应搜索范围的快速运动估计算法,经过实验证明对于

  如salesman等中小运动序列,其速度可接近全局搜索算法的400倍,接近三步搜索算法的4倍;而对于

  大运动序列,如table tennis,该算法则会自动调节搜索点数以适应复杂的运动。当从总体上考察速度

  方面的性能时,可以看到,该算法平均速度是全局搜索算法的287.4倍,三步搜索的2.8倍。


分级搜索范围(DSR)算法

  分级搜索算法的基本思想是从最低分辨率开始逐级精度的进行不断优化的运动搜索策略,首先取得两个原始图象帧的金子塔表示,从上到下分辨率逐级变细,从顶端开始,选择一个尺寸比较大的数据块进行一个比较粗略的运动搜索过程,对在此基础上进行亚抽样(即通过降低数据块尺寸(或提高抽样分辨率)和减少搜索范围的办法)进行到下一个较细的级来细化运动矢

  量,而一个新的搜索过程可以在上一级搜索到的最优运动矢量周围进行。在亚抽样的过程中也有着

  不同的抽样方式和抽样滤波器。这种方法的优点是运算量的下降比例比较大,而且搜索的比较全面。

  缺点是由于亚抽样或者滤波器的采用而使内存的需求增加,另外如果场景细节过多可能会容易落入

  局部最小点。

混合搜索算法

  由于物体的运动千变万化,很难用一种简单的模型去描述,也很难用一种单一的算法来搜索最

  佳运动矢量,因此实际上大多采用多种搜索算法相组合的办法,可以在很大程度上提高预测的有效

  性和鲁棒性。

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

h264-运动估计和运动补偿理论 的相关文章

  • 时间戳问题汇总

    大家好 我刚接触流媒体不久 现在遇到一个非常奇怪的问题 向各位大侠请假 请你们指点 问题是这样的 用一个 VLC 流媒体客户端 去请求流媒体服务器上的数据 但是获得的数据播放速度明显快于1倍速 大概是 timestamp 不对 不知道是服务
  • h.264 视频无法在 iOS 上播放

    我有一个用 h 264 编码的视频文件无法在 iOS 上播放 我想知道原因 这是 HTML
  • 从 AVAssetWriter 读取实时 H.264 输出时数据损坏

    我正在使用一些技巧来尝试在将 AVAssetWriter 写入磁盘时读取其原始输出 当我通过连接各个文件来重新组装它们时 生成的文件与 AVAssetWriter 的输出文件的字节数完全相同 但是 重新组装的文件将无法在 QuickTime
  • 除 ffmpeg x264 之外的 H264 编码器

    我正在开发的 iPhone 应用程序会在特定的用户定义的时间间隔内连续捕获图像 我正在寻找一种将这些图像组合成 H264 编码视频的方法 我在 Google 上做了一些研究 看起来我必须在 iPhone 上使用 ffmpeg mencode
  • Python Opencv 和 Sockets - 以 h264 编码的流视频

    所以我正在尝试制作一个流媒体 将视频从局域网上的一台计算机流式传输到另一台计算机 或目前同一台计算机 我需要它使用尽可能少的带宽 所以我尝试用 h264 进行编码 我在做这件事时遇到了困难 我真的不知道从哪里开始 现在它是用jpg编码的 并
  • 通过 rtp 流发送 Android h264 捕获

    我正在为 android 编写一个 rtp 视频流媒体 它从 Android 本地套接字读取 h264 编码数据并将其打包 问题是我做到了 但我在客户端 Voip 不断收到黑框 通信过程如下 Android gt Asterisk gt J
  • 了解 libx264 输出 [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我在 ffmpeg 中使用 libx264 进行编码 最后我得到了以下输出 谁能指导我理解和解释这一点 有任何参考 文档吗 01 01 06 34 43 650 I stderr 6
  • 通过 ICodecAPI 为 H.264 IMFSinkWriter 编码器设置属性

    我试图通过检索 ICodecAPI 接口来调整通过 ActivateObject 创建的 H 264 编码器的属性 虽然我没有收到错误 但我的设置没有被考虑在内 代码在 Windows 10 下运行 我复制用于创建 IMFSinkWrite
  • Mediacodec 解码器在解码 H264 文件时总是超时

    我一直在努力decode编码的视频文件H264编码与安卓的媒体编解码器并尝试将解码器的输出放入surface 但是当我运行应用程序时 它显示黑色表面 并且在 DDMS logcat 中我看到解码器超时 我已将文件解析为有效frames首先
  • 取自 .mp4 的 H.264 解码器配置记录的格式

    我正在检查从 Android 设备录制的 mp4 视频文件中包含的解码器配置记录 有些设备的解码器配置记录中写入了奇怪或不正确的参数 以下是来自 Galaxy Player 4 0 的示例 该示例是不正确的 DecoderConfigura
  • 从 H.264 中删除 EIA-608 隐藏式字幕而不重新编码

    我希望从 H 264 视频 包含为 mkv 中删除隐藏字幕 EIA 608 而不需要重新编码 我最接近的是使用 ffmpeg ffmpeg f lavfi i movie input mkv out subcc map 0 0 output
  • 如何对透明背景的视频进行编码

    我正在使用 OSX 的 cocoa 使用 AVAssetWriter 以 h264 编码视频 这是配置 Configure video writer AVAssetWriter m videoWriter AVAssetWriter all
  • 解析 mdat MP4 中的 H264

    我有一个仅包含 MP4 容器中的 mdat 原子的文件 mdat中的数据包含AVC数据 我知道数据的编码参数 该格式似乎不是附件 B 字节流格式 我想知道我将如何解析这个 我尝试过搜索切片标题 但运气不佳 是否可以在没有 NAL 的情况下解
  • H264解析-切片头检测

    我知道在 h264 中我们可以通过位模式检测 NAL 单元0x000001 是否有等效的方法来检测 NAL 单元中的切片标头 如何处理多切片 NAL 单元 目前我正在使用 h264 的解析代码并获取相应结构中的切片标头 切片头语法在第 36
  • 使用 libx264 压缩一组图像时,为什么帧速率会影响最终输出大小?

    我正在使用 ffmpeg 使用 libx264 编解码器将一组图像编码为短延时视频 我的第一次尝试以 30 FPS 的速度进行编码 使用 ffmpeg r 30 pattern type glob i jpg vcodec libx264
  • 使用 libavformat API 读取 H264 SPS 和 PPS NAL 字节

    如何使用 libavformat API 读取 H264 SPS 和 PPS NAL 字节 我尝试使用 av read frame input avFormatContext avPkt API 从 mp4 视频 编解码器为 h264 文件
  • 将 H.264 I 帧放入 AVSampleBufferDisplayLayer 但不显示视频图像

    在详细回顾了 WWDC2014 Session513 后 我尝试在 IOS8 0 上编写我的应用程序来解码和显示一个实时 H 264 流 首先 我成功构建了H264参数集 当我得到一个带有 4 位起始代码的帧时 就像 0x00 0x00 0
  • 如何减少 MediaCodec 视频/avc 解码中的延迟

    我执行了一些简单的计时电影播放器 java https github com google grafika blob master src com android grafika MoviePlayer java in the Grafik
  • FFmpeg - H264 编码器找不到有效设备并且无法配置编码器

    我尝试使用 H264 编码器进行编码 但是当我这样做时 出现以下错误 h264 v4l2m2m 0x55682d2416c0 Could not find a valid device h264 v4l2m2m 0x55682d2416c0
  • 如何减少 MediaCodec H264 编码器延迟

    我正在尝试使用 Android6 0 的 MediaCodec 将 h264 实时低延迟编码为流 编码器大约有 6 帧延迟 我想知道如何减少 代码来自屏幕记录 cpp https android googlesource com platf

随机推荐

  • 结构体成员内存对齐规则

    关于结构体成员内存对齐 主要有以下三方面原则 原则1 结构体中元素是按照定义顺序一个一个放到内存中去的 但并不是 紧密排列的 从结构体存储的首地址开始 每一个元素放置到内存中时 它都 会认为内存是以它自己的大小来划分的 因此元素放置的位置一
  • 爬虫中的异常处理

    URLError和HTTPError HTTPError类是URLError类的子类 导入包 import urllib error http 错误是针对浏览器无法连接到服务器而增加的错误提示 引导并告诉浏览者该页是哪里出现了问题 通过ur
  • Springboot + elementUI实现上传用户头像

    最近一直在做一个背单词的小项目练手 准备着加入个新功能 想了很多种办法 本来准备利用sm ms图床 把用户头像上传到图床然后返回链接把链接存到数据库里 后来想了想 感觉用户的头像存在那不太好 于是还是决定把用户头像存储在项目里的一个文件夹好
  • 【图像去模糊2】SRN-DeblurNet论文笔记

    一 论文概述 本论文中 作者研究了图像去模糊中的 coarse to fine 方案并提出了一个尺度循环网络 SRN DeblurNet 用于图像去模糊任务 该网络具有更简单的网络结构 更少的参数数量并且更容易训练 二 论文的提出背景 图像
  • GUI+SQLServer考试系统

    文章目录 1 概述 1 1 目的与要求 1 2 设计环境 2 需求分析 2 1 系统功能要求设计 2 2 系统模块设计 2 3 数据字典 3 概念模型设计 4 逻辑和物理结构设计 4 1 由系统E R图转化而得到的关系模式如下 4 2 确定
  • 机器学习算法(六): 基于XGBoost的分类预测(基于天气数据集的XGBoost分类实战)

    机器学习算法 六 基于XGBoost的分类预测 1 实验室介绍 1 1 XGBoost的介绍 XGBoost是2016年由华盛顿大学陈天奇老师带领开发的一个可扩展机器学习系统 严格意义上讲XGBoost并不是一种模型 而是一个可供用户轻松解
  • CTFshow--web入门--文件上传

    目录 开始 web151 改后缀 禁js web152 改后缀 web153 user ini web154 155 user ini 短标签 web156 web157 158 159 反引号执行命令 web160 日志包含绕过 web1
  • ES快速学习

    ES 用于 存储 分析 检索 的工具 组成及与类比到mysql组成 倒排索引
  • centos8 Nginx配置反向代理时出现的13: Permission denied) while connecting to upstream, client: 127.0.0.1

    1 条件不允许的情况下 不能随意重启计算机 执行下列代码 setsebool P httpd can network connect 1 2 其他情况下获取root权限 vim etc selinux config 找到 SELINUX e
  • 鸡啄米VS2010/MFC编程入门教程——学习1初次接触

    2015年5月12日23 13 44 2013年 2014年 在九固开发伺服上位机的时候 刚开始的时候还想用VC6 0开发的 但是在WIN7下 各种不兼容 索性干脆直接换了VC2010 原本想装VS2012的 但是安装过程中 总有问题 后来
  • repo遍历所有git仓库

    repo遍历所有git仓库 repo forall c 命令 其中 参数有 c 后面可以带的任何可以被系统支持的shell命令 ls cp pwd等 p 在shell命令输出之前列出项目名称 v 列出执行shell指令输出的错误信息 该命令
  • 拦截器执行细节以及和过滤器的区别

    过滤器Filter和拦截器Interceptor区别 过滤器是 servlet 规范中的一部分 任何 java web 工程都可以使用 拦截器是 SpringMVC 框架自己的 只有使用了 SpringMVC 框架的工程才能用 过滤器在 u
  • 超赞!Win10自带系统修复工具DISM使用说明

    每当Win10系统出现间断蓝屏 不要着急重装系统 可以试试Win10自带的DISM exe工具 使用方法如下 启动管理员模式的命令提示符 输入 1 扫描全部系统文件和系统映像文件是否与官方版本一致 时间较长 耐心等待 Dism Online
  • Movidius神经计算棒2-安装前准备工作

    上面是我的微信和QQ群 欢迎新朋友的加入 安装支持软件包 啥也不说 先把下面的事情做完 pip install Cython 0 26 pip install Markdown 2 6 8 pip install Pillow 4 2 1
  • IPFS星际文件系统下载及安装

    ipfs的下载与安装 ipfs星际文件系统是一个面向全球的 P2P的分布式文件系统 目标是补充 甚至是取代 目前通知互联网的超文本传输协议http 与传统的基于域名寻址的http协议相比较 ipfs的原理是基于内容寻址 也就是说用户寻找的不
  • 计算机组成原理——第六章测试题(上)

    1单选 1分 计算机中的数据可以存放在 C 中 A 寄存器 B 主存 C 都可以 D 硬盘 2单选 1分 下列对源码 补码和反码叙述正确的是 B A 当真值为正时 原码和补码的表示形式不同 但其符号位都用 0 表示 B 三种机器数的最高位均
  • SpringCloud基础3——Docker

    导航 黑马Java笔记 踩坑汇总 JavaSE JavaWeb SSM SpringBoot 瑞吉外卖 SpringCloud SpringCloudAlibaba 黑马旅游 谷粒商城 目录 1 初识Docker 1 1 什么是Docker
  • 最新版Photoshop 2023(ps2023)特色功能有哪些?

    Photoshop 2023是一款图像处理软件 该版本已经更新到ps 2023版 最新的ps 2023中文版帮助你组合 修饰和重新混合您的照片 为您的旧黑白添加新颜色 让不需要的东西消失 或者将无聊的背景变成异国情调 ps 2022中文版功
  • C ~ 递归

    定义 函数调用函数自己 这种调用过程称为递归 recursion 递归是以自相似的方式重复项目的处理过程 函数内部调用函数自身 称为递归调用 如下 int main recursion void recursion recursion 函数
  • h264-运动估计和运动补偿理论

    定义 运动补偿是通过先前的局部图像来预测 补偿当前的局部图像 它是减少帧序列冗余信息的有效方法 MPEG 4采用I VOP P VOP B VOP三种帧格式来表征不同的运动补偿类型 它采用了H 263中的半像素搜索 half pixel s