论文翻译(12)--A Bayesian Model for Crowd Escape Behavior Detection_pets2009数据集-程序员宅基地

技术标签: 论文学习  

A Bayesian Model for Crowd Escape Behavior Detection

人群逃逸行为检测的贝叶斯模型

论文介绍:IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY , VOL. 24, NO. 1, JANUARY 2014
论文地址链接:https://pan.baidu.com/s/1OqaQ5o5B9hT4kD8RIidrWA 提取码:pa4y

摘要——当意外事件发生时,人们自然会逃离一个地方。基于这一观察,有效检测监控视频中的人群逃逸行为是一种很有前途的及时检测异常情况的方法。在这篇文章中,我们提出了一个贝叶斯框架,通过直接模拟人群在有和没有逃生事件时的运动来检测逃生。具体来说,我们在上述两种情况下分别引入了潜在目的地和发散中心的概念来表征人群运动,并构造了相应的光流类条件概率密度函数。逃逸检测最终基于所提出的贝叶斯框架来执行。虽然训练集中只包括与非景观行为相关的数据,但是与逃逸情况相关的密度函数也可以使用观察到的数据自适应地更新。此外,确定的分歧中心表明了意外事件发生的可能位置。我们提出的方法在不同场景下的人群逃逸检测实验中得到了验证。

Index Terms——人群运动、发散运动模式、逃逸、马尔可夫链蒙特卡罗。

I. Introduction

在公共场所,如街道、广场和地铁站,及时发现异常事件意味着有更多的时间来减轻这些事件的影响。在[1]中,异常被定义为偏离正常或通常的事物,通常是以不希望的方式。基于这种解释,异常事件可以被定义为不同于正常事件的异常或不规则事件。在现实世界的场景中,比如行人在街上行走,人们会喜欢跟随邻居,与他们目标相同。在人群中发生的自组织效应会导致这些场景中有规律的运动模式。当影响公共安全的异常事件发生时,如火灾、爆炸、交通灾难等,人们会逃离,因为这是避免危险、不愉快或不希望的事情的自然行为。如[2]所述,恐慌引起的人群踩踏是最具灾难性的人群行为之一,可能导致人被踩踏或碾压,并且随着群体性事件的数量和规模的增加,此类灾难似乎更加频繁。该文提出了一种通过直接模拟人群在非场景和逃逸情况下的运动来检测人群逃逸的方法。

为了自动识别监控视频中的人群行为,许多计算机视觉方法被应用于人群行为分析。调查[3]全面介绍了这些技术,包括异常人群行为检测[4],[5],人群场景理解[6]–[ 8],人群合成以促进运动模式分析[9],[10]等等。然而,检测人群中的异常行为仍然是一项具有挑战性的任务。

已经报道了几种主要基于光流、轨迹[11]-[14]、动态纹理模式[15]、[16]和时空上下文[17]的分析来表征视频中人类行为的方法。光流是模式提取中最常用的特征,例如,光流直方图[18]、光流多尺度直方图[1]、光流时空分布[19]和光流聚类[20]。为了分析人群运动,可以使用社会力模型从相应的光流场估计人群的相互作用力[4]。通过流场作用下的粒子平流,应用流体力学原理研究人群运动。例如,李雅普诺夫指数可以用来衡量人群随时间的分散程度[21],[22]。虽然本文也是基于光流,但我们提出了一种新的贝叶斯模型,该模型结合了流场特征,从而可以更好地表征人群运动模式。

对于异常检测,不同于在人群中识别个体异常行为的通常技术[23]–[ 25],我们将人群视为单个实体,并研究其行为。现有的大多数方法(见[1]、[4]、[22])只对正常人群行为进行建模,并将其与所有其他可能的行为区分开来。这些方法基于代表正常人群行为的类被很好地采样的假设。然而,这些方法很难仅基于正常人群数据来确定准确的决策边界。

在本文中,我们将重点放在人群逃逸检测上,因为当意外事件发生时,人们会自然地逃离一个地方。图1显示了人们在恐惧中逃离的几种情况。我们认为人群逃离行为是意外事件发生的可能迹象,并引入贝叶斯框架进行人群逃离行为检测。对于描述人群活动的给定视频,使用相应的光流场来表示帧。为了分析人群行为,每个光流场被表示为一个面片集合,属于前景的面片被认为是单独的移动对象。分别估计了在无景和逃逸情况下位置、大小和方向的类条件概率密度函数。图2总结了我们方法的主要步骤。两个关键阶段是人群运动方向建模和模型参数确定。不失一般性,我们假设人们在非场景的情况下走向他们的预定目的地。结果,个人的运动方向可以通过他们的目的地和当前位置来确定。然而,对于给定的视频,由于视野有限,我们无法准确识别行人的预期目的地。为了在这种情况下捕捉人群的运动模式,我们引入了潜在目的地的概念。我们指定一组位于不同方向和视野之外的潜在目的地,并从训练集中估计潜在目的地的先验概率。另一方面,人们在逃离的情况下会偏离这些目的地。
在这里插入图片描述
在这里插入图片描述我们使用一组不同的运动模式来模拟人群逃离行为,可以通过一种提议的蒙特卡罗抽样方法来估计相关的发散中心。我们在合成数据和真实数据上评估我们的方法,并在众所周知的UMN数据集上与许多最先进的方法进行比较[26]。实验结果表明,我们提出的方法具有以下特点。

1)虽然训练集中只包括不涉及逃逸的数据,但是当意外事件发生时,可以使用观察到的数据来估计逃逸的光流密度。

2)我们使用一组发散的运动模式来模拟人群逃离行为,相关的发散中心指示意外事件发生的可能位置。

3)通过对非场景和逃逸(nonescape and escape)两种情况下人群运动的直接建模,该方法在各种场景下的人群逃逸行为检测中取得了较高的准确率,性能优于现有的仅建模非场景行为的方法[1]、[4]、[22]、[27]。

本文的主要贡献总结如下。
1)引入了潜在目的地和发散中心的概念,分别对非景观和逃逸情况下的人群行为进行建模。
2)提出一种贝叶斯模型,结合不同光流属性的信息来捕捉运动模式,用于人群逃逸行为检测。
本文的其余部分组织如下。第二节讨论了人群运动模式提取和异常检测的相关工作。在第三节中,我们介绍了我们的贝叶斯模型用于人群逃逸行为检测。在第四部分,我们提供了模型实现的细节,以及参数值的估计。在第五部分,我们给出了基于我们提出的方法在多种场景下的实验结果,并与现有方法进行了比较。最后,我们的结论和本文的潜在扩展在第六节中进行了描述。

II. Related Work

人群相关场景理解问题,如人群分割[28]、[29]、人群计数[30]、运动人群跟踪[31]、[32]和人群活动感知[33]吸引了许多研究人员的兴趣。与本文更相关的工作是人群运动模式提取和异常事件检测。有几种方法可以直接从光流场中提取运动模式。在[18]中,视频帧最初由相应光流场的直方图表征,并通过时空拉普拉斯特征映射方法进一步表示为低维流形上的点。因此,视频被表示为流形上帧的轨迹。在学习描述正常事件的视频的轨迹之后,可以通过将视频的轨迹与正常视频的轨迹进行比较来检测异常事件。丛等人[1]提出了一种基于三种不同时空模板的光流多尺度直方图,用于提取正常人群行为的光流场模式,并采用稀疏方法确定模式子集作为字典,用于重构其他元素。因为只有正常数据用于字典构建,所以可以通过将一组给定数据的稀疏重建成本与预先指定的阈值进行比较来检测异常。Yassine等人[34]提出了一个方向模型来提取光流场块中的主要方向。该模型的新颖之处在于在每个位置使用了多个方向描述符,适用于局部区域有多个运动方向不同的运动对象的情况。在组合这些块后,一群人被分成几个组,每个组对应于一种特定类型的运动模式。通过分析群体的运动方向和速度,最终识别出群体的整体行为。另一方面,陈等人[27]不是分析整个光流场,而是通过一组显著点来表征人群运动。基于包括位置和光流方向的一组特征,使用分层聚类方法对显著点进行分组。对于每个集群,主要类型的运动模式由主导力表示。当人群运动方向与预测方向不一致时,检测到异常人群事件。这种方法的一个限制是只考虑方向,因此无法检测人群速度的变化。Hassner等人[35]提出了一种表示光流幅度随时间变化的暴力流描述符,并将该描述符应用于人群暴力行为检测。虽然[35]中的方法和这项工作都利用流量大小来表征人群行为,但我们采用贝叶斯框架来组合流量位置和方向形式的附加信息。此外,人群逃离行为不同于暴力行为,因为在前一种情况下,可以辨别由人类自组织行为产生的一些运动模式,并且本文使用发散流动模式来模拟人群逃离行为。

通过在光流场的作用下进行粒子平流,采用流体动力学来表征全球人群行为。吴等人[22]采用混沌不变量来表征人群运动。粒子轨迹的混沌动力学可以用两个不变量来概括,最大李雅普诺夫指数和关联维数[36],分别测量散度的程度和吸引子的大小。正常人群活动的混沌不变量分布采用高斯混合模型建模,轨迹的似然性用于判断相应人群行为是否正常。然而,在描绘一群人朝同一方向行走和突然奔跑的场景中,最大李雅普诺夫指数无法区分这两种运动类型。同样基于粒子的轨迹,阿里等人[21]计算了人群流分割的有限时间李雅普诺夫指数[37]。因为人群运动的变化可能导致分割区域的形状的相应变化,所以可以通过与正常情况下的分割进行比较来检测异常人群行为。该方法适用于人群密度高、正常人群流动稳定或缓慢变化的情况。然而,在低密度人群场景中,人群的分割是不稳定的,使得即使在正常情况下,在特定时间间隔内分割的变化也可能是显著的。在[38]中,人群运动由条纹流表示。基于亥姆霍兹分解定理,条纹流被分解为一个无散度分量和一个无旋度分量的和,这两个分量分别通过对与人群相关的两个标量势函数应用旋度算子和梯度算子来表示。支持向量机分类器用于在由两个势函数值形成的二维特征空间中识别人群行为。
为了提取不同类型运动模式的潜在表示,使用潜在狄利克雷分配(LDA) [39]来分析人群行为。在[40]中,一个帧序列被划分为一组时空立方体,小波变换被用来提取表征每个立方体时间维度变化的高频信息,而线性判别分析被用来确定表示正常样本集的混合模型。在[41]中,可以自动确定长方体的大小和总数。梅兰等人[4]采用线性判别分析方法分析人群中的相互作用力。社会力模型[42]用于从一系列光流场估计相互作用力。力场中不同位置的力的大小被分成许多簇,簇的中心作为一组视觉单词,单词包方法被用于特征编码。使用线性判别分析生成混合模型来描述正常情况下的人群行为。通过设置可能性阈值来识别异常人群活动。然而,在不同位置的相互作用力场的矢量大小,虽然与人的速度在短时空窗口中的一致性间接相关,但不是区分正常和异常人群活动的直接证据,因为正常和异常情况下的相互作用力大小的差异可能是细微的。

类似于上述方法,我们还采用光流场来表示人群运动。然而,与从光流中提取运动模式的通常方式不同领域,然后从中学习,我们使用一种完全不同的方法,引入潜在目的地和发散中心的概念,分别在非景观和逃逸的情况下模拟人群运动。

III. Bayesian-Based Crowd Motion Modeling

一般来说,人群行为可以分为两种情况,非逃跑和逃跑,分别用ω1和ω2表示。在非逃跑的情况下,人们主要位于某个区域,步行到他们预期的目的地。当突发事件发生时,人们会很快偏离目标位置。在我们的模型中,我们通过相应的光流场来分析视频中的人群行为。

略。。。。。。。。

IV . Model Implementation and Parameter Determination

略。。。。。。。。

V . Experimental Results

在这一节中,我们评估了在合成数据和真实数据上提出的模型。视频主要收集自已广泛用于性能评估的PETS2009数据集[49]和UMN数据集[26]。我们首先展示了基于可逆跳跃大都市算法的结果,用于估计合成和真实矢量场上的发散中心位置。接下来,我们将所提出的方法与基于稀疏重构代价(SRC) [1]、基于混沌不变量(CI) [22]、社会力模型(SF) [4]和力场模型(FF) [27]的方法在PETS2009数据集、UMN数据集和web数据集上进行比较。为了在逃逸识别中定量评估这些方法,我们手动标记所有数据的地面真实度,并将准确度定义为通过将结果与地面真实度进行比较而计算的正确识别的帧的百分比。

A.发散中心位置的确定

B. Evaluation on PETS2009 Dataset(在PETS2009数据集的评估)
我们从PETS2009数据集选择两个场景进行测试。对于每个场景,有四个由不同摄像机从不同视角拍摄的序列。由于视野和照明存在显著差异,从四个视图中识别逃逸事件具有挑战性。第一个场景描绘了一群行人从一边走到另一边。该序列包含107帧。当到达第41帧的交叉路口时,行人开始奔跑。第二个场景描述了在前190帧中,三组行人向中心走去,然后停留在交叉路口。在第335帧,行人开始向多个方向逃跑。我们在这些场景中测试了提出的方法,FF、CI和SF。对于第一个(第二个)场景,我们随机选择30 (100)个非场景帧,并计算相应的光流场作为训练集。对于每个场景,这些方法使用相同的训练集,并且每个方法的相同参数设置用于对相应的四个序列进行评估。表一和表二显示了这两种情况下逃逸识别方法的准确性。由于只有运动方向被用来表征人群行为,在第一种情况下,当人们加速而不改变他们的运动方向时,FF无法识别逃逸事件。在这些多视图数据上,该方法的性能比其他方法更稳定。通过对每个场景的四个视图进行平均,所提出的方法获得了比其他方法更高的精度。部分检测结果如图10-13所示。
在这里插入图片描述C. More Examples of Crowd Escape Detection人群逃离检测的更多示例

该方法也适用于更多的人群逃逸检测实例。与PETS2009数据集相比,网络数据集中的人群运动模式更复杂,因为这些模式受到现实世界场景中许多因素的影响,例如频繁的交互、障碍等等。图14中显示的序列包含110帧,描绘了一群奔牛者在西班牙潘普洛纳的街道上奔跑时散开的场景。行人最初走在街上。第67帧,视野中出现了一些公牛,人们开始逃跑。这个序列是从正面拍摄的,那里有严重的遮挡,这使得人群运动的识别模式更加困难。另一个包括215帧的序列涉及如图15所示的节日人群。人们首先聚集在一起庆祝,然后在第71帧后分散。对于每个序列,我们使用对应于50个随机选择的非场景帧的光流场作为训练数据,并在这两个序列上测试所提出的方法。如表三所示,所提出的方法和置信区间优于FF和SF。最终结果如图14和15所示。

D. Evaluation on UMN Dataset(在UMN数据集上的评估)

UMN数据集描绘了11种不同的逃逸事件场景。这些场景首先描绘了一群人在开放空间自由走动或呆在大厅里,然后迅速离开视野。视频总共包含7740帧,其中1431帧涉及转义。根据场景的不同,我们将场景分为三个子集,分别包括前两个场景、后六个场景和后三个场景。我们将所提出的方法与FF、CI、SF和SRC在识别该数据集中的逃逸事件方面进行了比较。对于每个子集,我们首先通过计算每个场景中随机选择的50个非场景帧对应的光流场来生成训练数据,然后将所提出的方法应用于逃逸检测。[1]中的SRC之前在整个UMN数据集上进行了测试,我们使用提供的结果来计算相应的准确性。表四显示了三个场景中五种方法的精度比较。通过对7740帧进行平均,我们的方法获得了96.40%的准确率,高于快速傅立叶变换(81.04%)、置信区间(87.91%)、简单傅立叶变换(85.09%)和简单傅立叶变换(84.70%)。虽然所提出的方法和SRC使用不同的训练集,但是所提出的方法使用更少的训练帧(场景1-3分别为100、300、150帧),并且获得比SRC(每个场景400帧)更高的精度。特别是,我们的方法的优势在室内场景(场景2)中很明显。与室外场景(场景1和3)相比,在非场景的情况下,室内场景中的人表现出较少的运动,这是由于受限的空间使得他们的运动特征不明显。结果,FF、CI、SF和SRC检测人群逃离行为变得困难,因为这些方法仅使用有限的训练集对非场景情况下的人群行为进行建模。另一方面,所提出的方法在非场景和逃逸两种情况下模拟人群运动,并使用相应的两种不同的运动模式来拟合观察到的数据。从两种类型的运动之间的比较中受益,我们提出的方法可以实现更稳定的性能。图16显示了十一种情况下更详细的精度比较。
在这里插入图片描述可以看出我们的方法在几乎所有情况下都更准确。一些有代表性的结果如图17-19所示。

VI. Conclusion

基于人们在突发事件发生时自然逃离一个地方的观察,我们认为人群逃离行为是突发事件的一个指标。我们提出了一个贝叶斯框架用于视频中人群逃离行为的检测,在非场景和逃离的情况下直接建模人群运动。我们使用光流场表征人群运动,并构建不同场属性的相关类条件概率密度函数。因此,人群逃离行为可以通过贝叶斯公式来检测。虽然我们只采用不涉及逃逸的数据进行训练,但该方法能够自动更新光流属性的密度,并在突发事件发生时估计发散中心的位置。我们使用多个数据集验证了我们提出的方法的性能。

所提出的方法基于光流。对于低质量视频,产生的光流场变得不稳定。为了减少噪声的影响,我们使用规则网格将流场划分为一组面片,并关注每个面片的平均光流矢量。用三维体积代替2D面片可以使我们的模型性能更加稳定。此外,所提出的方法受到光流估计精度的限制。当结合更精细的光流计算方法时,可能会产生更精确的性能。

该方法被应用于检测涉及个体位置、速度和运动方向变化的人群逃逸行为。具体来说,当出现以下至少一种情况时,可以识别逃逸事件:人们从他们通常停留的特定位置离开;人们加速,速度幅度大于正常速度;人们改变运动方向,从某些不同的中心分散开来。在高密度人群场景中,运动模式受到许多因素的影响,尤其是个体之间频繁的交互。这种情况下的人群逃离行为与中低密度人群场景下的人群逃离行为有显著差异。

所提出的方法主要适用于后一种情况。作为我们未来工作的一部分,我们计划进一步研究高密度场景下人群逃生行为的特征,以便在这种情况下可以识别不同类型的复杂逃生模式。

References

[1] Y . Cong, J. Y uan, and J. Liu, “Sparse reconstruction cost for abnormal event detection,” in Proc. IEEE Conf. Comput. Vision Pattern Recognit.,
2011, pp. 3449–3456.
[2] D. Helbing, I. Farkas, and T. Vicsek, “Simulating dynamical features of escape panic,” Nature, vol. 407, no. 6803, pp. 487–490, 2000.
[3] J. Jacques Junior, S. Musse, and C. Jung, “Crowd analysis using computer vision techniques,” IEEE Signal Process. Mag., vol. 27, no. 5,pp. 66–77, Sep. 2010.
[4] R. Mehran, A. Oyama, and M. Shah, “Abnormal crowd behavior detection using social force model,” in Proc. IEEE Conf. Comput. Vision Pattern Recognit., 2009, pp. 935–942.
[5] L. Kratz and K. Nishino, “Anomaly detection in extremely crowded scenes using spatio-temporal motion pattern models,” in Proc. IEEEConf. Comput. Vision Pattern Recognit., 2009, pp. 1446–1453
[6] A. Cheriyadat and R. Radke, “Detecting dominant motions in dense crowds,” IEEE J. Sel. Topics Signal Process., vol. 2, no. 4, pp.568–581, Aug. 2008.
[7] E. Andrade, S. Blunsden, and R. Fisher, “Modelling crowd scenes for event detection,” in Proc. Int. Conf. Pattern Recognit., 2006, pp. 175–178.
[8] J. Jacques, A. Braun, J. Soldera, S. Musse, and C. Jung, “Understanding people motion in video sequence using V oronoi diagrams,” Pattern Anal. Appl., vol. 10, no. 4, pp. 321–332, 2007
[9] E. Andrade and R. Fisher, “Simulation of crowd problems for computervision,” in Proc. Int. Workshop Crowd Simulat., 2005, pp. 71–80.
[12] B. Zhou, X. Wang, and X. Tang, “Understanding collective crowd behaviors: Learning a mixture model of dynamic pedestrian-agents,” in Proc. IEEE Conf. Comput. Vision Pattern Recognit., 2012, pp. 2871–2878.
[16] Y . Ma, P . Cisar, and A. Kembhavi, “Motion segmentation and activity representation in crowds,” Int. J. Imag. Syst. Technol., vol. 19, no. 2, pp.80–90, 2009.
[19] E. Andrade, S. Blunsden, and R. Fisher, “Hidden Markov models for optical flow analysis in crowds,” in Proc. Int. Conf. Pattern Recognit.,2006, pp. 460–463.
[20] M. Hu, S. Ali, and M. Shah, “Learning motion patterns in crowdedscenes using motion flow field,” in Proc. IEEE Int. Conf. Pattern Recognit., 2008, pp. 1–5
[23] V . Mahadevan, W. Li, V . Bhalodia, and N. V asconcelos, “Anomalydetection in crowded scenes,” in Proc. IEEE Conf. Comput. Vision Pattern Recognit., 2010, pp. 1975–1981
[25] D. Ryan, S. Denman, C. Fookes, and S. Sridharan, “Textures of opticalflow for real-time anomaly detection in crowds,” in Proc. IEEE Int. Conf.Adv. Video Signal-Based Surveill., 2011, pp. 230–235.
[26] Univ. Minnesota. Unusual crowd activity dataset of Universityof Minnesota [Online]. Available: http://mha.cs.umn.edu/movies/crowdactivity-all.av

[27] D. Chen and P . Huang, “Motion-based unusual event detection in human crowds,” J. Vis. Commun. Image Represent., vol. 22, no. 2, pp. 178–186,2011.

[35] T. Hassner, Y . Itcher, and O. Kliper-Gross, “Violent flows: Real-timedetection of violent crowd behavior,” in Proc. IEEE Conf. Comput.Vision Pattern Recognit. Workshops, 2012, pp. 1–6
[49] J. Ferryman and A. Shahrokni, “PETS2009: Dataset and challenge,”in Proc. IEEE Int. Workshop Performance Evaluat. Tracking Surveill.,2009, pp. 1–6.

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ningmengshuxiawo/article/details/109639003

智能推荐

使用nginx解决浏览器跨域问题_nginx不停的xhr-程序员宅基地

文章浏览阅读1k次。通过使用ajax方法跨域请求是浏览器所不允许的,浏览器出于安全考虑是禁止的。警告信息如下:不过jQuery对跨域问题也有解决方案,使用jsonp的方式解决,方法如下:$.ajax({ async:false, url: 'http://www.mysite.com/demo.do', // 跨域URL ty..._nginx不停的xhr

在 Oracle 中配置 extproc 以访问 ST_Geometry-程序员宅基地

文章浏览阅读2k次。关于在 Oracle 中配置 extproc 以访问 ST_Geometry,也就是我们所说的 使用空间SQL 的方法,官方文档链接如下。http://desktop.arcgis.com/zh-cn/arcmap/latest/manage-data/gdbs-in-oracle/configure-oracle-extproc.htm其实简单总结一下,主要就分为以下几个步骤。..._extproc

Linux C++ gbk转为utf-8_linux c++ gbk->utf8-程序员宅基地

文章浏览阅读1.5w次。linux下没有上面的两个函数,需要使用函数 mbstowcs和wcstombsmbstowcs将多字节编码转换为宽字节编码wcstombs将宽字节编码转换为多字节编码这两个函数,转换过程中受到系统编码类型的影响,需要通过设置来设定转换前和转换后的编码类型。通过函数setlocale进行系统编码的设置。linux下输入命名locale -a查看系统支持的编码_linux c++ gbk->utf8

IMP-00009: 导出文件异常结束-程序员宅基地

文章浏览阅读750次。今天准备从生产库向测试库进行数据导入,结果在imp导入的时候遇到“ IMP-00009:导出文件异常结束” 错误,google一下,发现可能有如下原因导致imp的数据太大,没有写buffer和commit两个数据库字符集不同从低版本exp的dmp文件,向高版本imp导出的dmp文件出错传输dmp文件时,文件损坏解决办法:imp时指定..._imp-00009导出文件异常结束

python程序员需要深入掌握的技能_Python用数据说明程序员需要掌握的技能-程序员宅基地

文章浏览阅读143次。当下是一个大数据的时代,各个行业都离不开数据的支持。因此,网络爬虫就应运而生。网络爬虫当下最为火热的是Python,Python开发爬虫相对简单,而且功能库相当完善,力压众多开发语言。本次教程我们爬取前程无忧的招聘信息来分析Python程序员需要掌握那些编程技术。首先在谷歌浏览器打开前程无忧的首页,按F12打开浏览器的开发者工具。浏览器开发者工具是用于捕捉网站的请求信息,通过分析请求信息可以了解请..._初级python程序员能力要求

Spring @Service生成bean名称的规则(当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致)_@service beanname-程序员宅基地

文章浏览阅读7.6k次,点赞2次,收藏6次。@Service标注的bean,类名:ABDemoService查看源码后发现,原来是经过一个特殊处理:当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致public class AnnotationBeanNameGenerator implements BeanNameGenerator { private static final String C..._@service beanname

随便推点

二叉树的各种创建方法_二叉树的建立-程序员宅基地

文章浏览阅读6.9w次,点赞73次,收藏463次。1.前序创建#include<stdio.h>#include<string.h>#include<stdlib.h>#include<malloc.h>#include<iostream>#include<stack>#include<queue>using namespace std;typed_二叉树的建立

解决asp.net导出excel时中文文件名乱码_asp.net utf8 导出中文字符乱码-程序员宅基地

文章浏览阅读7.1k次。在Asp.net上使用Excel导出功能,如果文件名出现中文,便会以乱码视之。 解决方法: fileName = HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8);_asp.net utf8 导出中文字符乱码

笔记-编译原理-实验一-词法分析器设计_对pl/0作以下修改扩充。增加单词-程序员宅基地

文章浏览阅读2.1k次,点赞4次,收藏23次。第一次实验 词法分析实验报告设计思想词法分析的主要任务是根据文法的词汇表以及对应约定的编码进行一定的识别,找出文件中所有的合法的单词,并给出一定的信息作为最后的结果,用于后续语法分析程序的使用;本实验针对 PL/0 语言 的文法、词汇表编写一个词法分析程序,对于每个单词根据词汇表输出: (单词种类, 单词的值) 二元对。词汇表:种别编码单词符号助记符0beginb..._对pl/0作以下修改扩充。增加单词

android adb shell 权限,android adb shell权限被拒绝-程序员宅基地

文章浏览阅读773次。我在使用adb.exe时遇到了麻烦.我想使用与bash相同的adb.exe shell提示符,所以我决定更改默认的bash二进制文件(当然二进制文件是交叉编译的,一切都很完美)更改bash二进制文件遵循以下顺序> adb remount> adb push bash / system / bin /> adb shell> cd / system / bin> chm..._adb shell mv 权限

投影仪-相机标定_相机-投影仪标定-程序员宅基地

文章浏览阅读6.8k次,点赞12次,收藏125次。1. 单目相机标定引言相机标定已经研究多年,标定的算法可以分为基于摄影测量的标定和自标定。其中,应用最为广泛的还是张正友标定法。这是一种简单灵活、高鲁棒性、低成本的相机标定算法。仅需要一台相机和一块平面标定板构建相机标定系统,在标定过程中,相机拍摄多个角度下(至少两个角度,推荐10~20个角度)的标定板图像(相机和标定板都可以移动),即可对相机的内外参数进行标定。下面介绍张氏标定法(以下也这么称呼)的原理。原理相机模型和单应矩阵相机标定,就是对相机的内外参数进行计算的过程,从而得到物体到图像的投影_相机-投影仪标定

Wayland架构、渲染、硬件支持-程序员宅基地

文章浏览阅读2.2k次。文章目录Wayland 架构Wayland 渲染Wayland的 硬件支持简 述: 翻译一篇关于和 wayland 有关的技术文章, 其英文标题为Wayland Architecture .Wayland 架构若是想要更好的理解 Wayland 架构及其与 X (X11 or X Window System) 结构;一种很好的方法是将事件从输入设备就开始跟踪, 查看期间所有的屏幕上出现的变化。这就是我们现在对 X 的理解。 内核是从一个输入设备中获取一个事件,并通过 evdev 输入_wayland

推荐文章

热门文章

相关标签