# 论文解读 - 城市自动驾驶车辆运动规划与控制技术综述 (第2部分)

### 文章目录

• 🚗 II. Overview of the decision-making hierarchy used in driverless cars（无人驾驶汽车的决策层综述）
• 🔴 A. Route Planning（路径规划）
• 🟠 B. Behavioral Decision Making（行为决策）
• 🟡 C. Motion Planning（运动规划）
• 🟢 D. Vehicle Control（车辆控制）
• 🚚 III. Modeling for planning and control （规划与控制的建模）
• 🔴 A. The Kinematic Single-Track Model（单轨运动学模型）
• 🟠 B. Inertial Effects（惯性效应）

# 🚗 II. Overview of the decision-making hierarchy used in driverless cars（无人驾驶汽车的决策层综述）

In this section we describe the decision making architecture of a typical self-driving car and comment on the responsibilities of each component. Driverless cars are essentially autonomous decision-making systems that process a stream of observations from on-board sensors such as radars, LIDARs, cameras, GPS/INS units, and odometry. These observations, together with prior knowledge about the road network, rules of the road, vehicle dynamics, and sensor models, are used to automatically select values for controlled variables governing the vehicle’s motion. Intelligent vehicle research aims at automating as much of the driving task as possible. The commonly adopted approach to this problem is to partition and organize perception and decision-making tasks into a hierarchical structure. The prior information and collected observation data are used by the perception system to provide an estimate of the state of the vehicle and its surrounding environment; the estimates are then used by the decision-making system to control the vehicle so that the driving objectives are accomplished.

The decision making system of a typical self-driving car is hierarchically decomposed into four components (cf. Figure II.1): At the highest level a route is planned through the road network. This is followed by a behavioral layer, which decides on a local driving task that progresses the car towards the destination and abides by rules of the road. A motion planning module then selects a continuous path through the environment to accomplish a local navigational task. A control system then reactively corrects errors in the execution of the
planned motion. In the remainder of the section we discuss the responsibilities of each of these components in more detail.

## 🔴 A. Route Planning（路径规划）

At the highest level, a vehicle’s decision-making system must select a route through the road network from its current position to the requested destination. By representing the road network as a directed graph with edge weights corresponding to the cost of traversing a road segment, such a route can be formulated as the problem of finding a minimum-cost path on a road network graph. The graphs representing road networks can however contain millions of edges making classical shortest path algorithms such as Dijkstra [32] or A* [33] impractical. The problem of efficient route planning in transportation networks has attracted significant interest in the transportation science community leading to the invention of a family of algorithms that after a one-time pre-processing step return an optimal route on a continent-scale network in milliseconds [34], [35]. For a comprehensive survey and comparison of practical algorithms that can be used to efficiently plan routes for both human-driven and self-driving vehicles, see [36].

## 🟠 B. Behavioral Decision Making（行为决策）

After a route plan has been found, the autonomous vehicle must be able to navigate the selected route and interact with other traffic participants according to driving conventions and rules of the road. Given a sequence of road segments specifying the selected route, the behavioral layer is responsible for selecting an appropriate driving behavior at any point of time based on the perceived behavior of other traffic participants, road conditions, and signals from infrastructure. For example, when the vehicle is reaching the stop line before an intersection, the behavioral layer will command the vehicle to come to a stop, observe the behavior of other vehicles, bikes, and pedestrians at the intersection, and let the vehicle proceed once it is its turn to go.

Driving manuals dictate qualitative actions for specific driving contexts. Since both driving contexts and the behaviors available in each context can be modeled as finite sets, a natural approach to automating this decision making is to model each behavior as a state in a finite state machine with transitions governed by the perceived driving context such as relative position with respect to the planned route and nearby vehicles. In fact, finite state machines coupled with different heuristics specific to considered driving scenarios were adopted as a mechanism for behavior control by most teams in the DARPA Urban Challenge [9].

Real-world driving, especially in an urban setting, is however characterized by uncertainty over the intentions of other traffic participants. The problem of intention prediction and estimation of future trajectories of other vehicles, bikes and pedestrians has also been studied. Among the proposed solution techniques are machine learning based techniques, e.g., Gaussian mixture models [37], Gaussian process regression [38] and the learning techniques reportedly used in Google’s self-driving system for intention prediction [39], as well as model-based approaches for directly estimating intentions from sensor measurements [40], [41].

This uncertainty in the behavior of other traffic participants is commonly considered in the behavioral layer for decision making using probabilistic planning formalisms, such as Markov Decision Processes (MDPs) and generalizations. For example, [42] formulates the behavioral decision-making problem in MDP framework. Several works [43]–[46] model unobserved different driving scenarios and pedestrian intentions explicitly using a partially-observable Markov decision process (POMDP) framework and propose specific approximate solution strategies.

## 🟡 C. Motion Planning（运动规划）

When the behavioral layer decides on the driving behavior to be performed in the current context, which could be, e.g., cruise-in-lane, change-lane, or turn-right, the selected behavior has to be translated into a path or trajectory that can be tracked by the low-level feedback controller. The resulting path or trajectory must be dynamically feasible for the vehicle, comfortable for the passenger, and avoid collisions with obstacles detected by the on-board sensors. The task of finding such a path or trajectory is a responsibility of the motion planning system, which is discussed in greater detail in Section IV.

## 🟢 D. Vehicle Control（车辆控制）

In order to execute the reference path or trajectory from the motion planning system a feedback controller is used to select appropriate actuator inputs to carry out the planned motion and correct tracking errors. The tracking errors generated during the execution of a planned motion are due in part to the inaccuracies of the vehicle model. Thus, a great deal of emphasis is placed on the robustness and stability of the closed loop system.

Many effective feedback controllers have been proposed for executing the reference motions provided by the motion planning system. A survey of related techniques are discussed in detail in Section V.

# 🚚 III. Modeling for planning and control （规划与控制的建模）

In this section we will survey the most commonly used models of mobility of car-like vehicles. Such models are widely used in control and motion planning algorithms to approximate a vehicle’s behavior in response to control actions in relevant operating conditions. A high-fidelity model may accurately reflect the response of the vehicle, but the added detail may complicate the planning and control problems.This presents a trade-off between the accuracy of the selected model and the difficulty of the decision problems. This section provides an overview of general modeling concepts and a survey of models used for motion planning and control.

Modeling begins with the notion of the vehicle configuration, representing its pose or position in the world. For example, configuration can be expressed as the planar coordinate of a point on the car together with the car’s heading. This is a coordinate system for the onfiguration space of the car. This coordinate system describes planar rigid-body motions (represented by the Special Euclidean group in two dimensions, SE(2)) and is a commonly used configuration space [47]–[49]. Vehicle motion must then be planned and regulated to accomplish driving tasks and while respecting the constraints introduced by the selected model.

## 🔴 A. The Kinematic Single-Track Model（单轨运动学模型）

In the most basic model of practical use, the car consists of two wheels connected by a rigid link and is restricted to move in a plane [48]–[52]. It is assumed that the wheels do not slip at their contact point with the ground, but can rotate freely about their axes of rotation. The front wheel has an added degree of freedom where it is allowed to rotate about an axis normal to the plane of motion. This is to model steering. These two modeling features reflect the experience most passengers have where the car is unable to make lateral displacement without simultaneously moving forward. More formally, the limitation on maneuverability is referred to as a nonholonomic constraint [47], [53]. The nonholonomic constraint is expressed as a differential constraint on the motion of the car. This expression varies depending on the choice of coordinate system. Variations of this model have been referred to as the car-like robot, bicycle model, kinematic model, or single track model.

The following is a derivation of the differential constraint in several popular coordinate systems for the configuration. In reference to Figure III.1, the vectors prp_r and pfp_f denote the location of the rear and front wheels in a stationary or inertial coordinate system with basis vectors (e^x,e^y,e^z)\left(\hat{e}_x, \hat{e}_y, \hat{e}_z\right). The heading θ\theta is an angle describing the direction that the vehicle is facing. This is defined as the angle between vectors e^x\hat{e}_x and pf−prp_f-p_r.

Differential constraints will be derived for the coordinate systems consisting of the angle θ\theta, together with the motion of one of the points prp_r as in [54], and pfp_f as in [55].

The motion of the points prp_r and pfp_f must be collinear with the wheel orientation to satisfy the no-slip assumption. Expressed as an equation, this constraint on the rear wheel is
prp_rpfp_f 的运动必须与车轮的朝向共线，以满足无滑移假设。对于后轮的该约束可以表示为
(p˙r⋅e^y)cos⁡(θ)−(p˙r⋅e^x)sin⁡(θ)=0(III.1)\left(\dot{p}_r \cdot \hat{e}_y\right) \cos (\theta)-\left(\dot{p}_r \cdot \hat{e}_x\right) \sin (\theta)=0 \quad(III.1)

and for the front wheel:

(p˙f⋅e^y)cos⁡(θ+δ)−(p˙f⋅e^x)sin⁡(θ+δ)=0(III.2)\left(\dot{p}_f \cdot \hat{e}_y\right) \cos (\theta+\delta)-\left(\dot{p}_f \cdot \hat{e}_x\right) \sin (\theta+\delta)=0 \quad(III.2)

This expression is usually rewritten in terms of the component-wise motion of each point along the basis vectors. The motion of the rear wheel along the e^x\hat{e}_x-direction is xr:=pr⋅e^xx_r:=p_r \cdot \hat{e}_x. Similarly, for e^y\hat{e}_y-direction, yr:=pr⋅e^yy_r:=p_r \cdot \hat{e}_y. The forward speed is vr:=p˙r⋅(pf−pr)/∥(pf−pr)∥v_r:=\dot{p}_r \cdot\left(p_f-p_r\right) /\left\|\left(p_f-p_r\right)\right\|, which is the magnitude of p˙r\dot{p}_r with the correct sign to indicate forward or reverse driving. In terms of the scalar quantities xrx_r , yry_r , and θ\theta, the differential constraint is

e^y\hat{e}_y 方向的运动写作 yr:=pr⋅e^yy_r:=p_r \cdot \hat{e}_y 。前向速度 vr:=p˙r⋅(pf−pr)/∥(pf−pr)∥v_r:=\dot{p}_r \cdot\left(p_f-p_r\right) /\left\|\left(p_f-p_r\right)\right\|，表示 p˙r\dot{p}_r的大小，同时带有正确的正负号，该正负号用于描述当前的行驶是正向或反向驾驶。利用 xrx_r , yry_rθ\theta这几个标量，微分约束可以写作

x˙r=vrcos⁡(θ)y˙r=vrsin⁡(θ)θ˙=vrltan⁡(δ)(III.3)\begin{aligned} \\ & \dot{x}_r=v_r \cos (\theta) \\ & \dot{y}_r=v_r \sin (\theta) \\ & \dot{\theta}=\frac{v_r}{l} \tan (\delta)\end{aligned} \quad(III.3)

Alternatively, the differential constraint can be written in terms the motion of pfp_f,

x˙f=vfcos⁡(θ+δ)y˙f=vfsin⁡(θ+δ)θ˙=vflsin⁡δ(III.4)\begin{aligned} &\dot{x}_f=v_f \cos (\theta+\delta) \\ &\dot{y}_f=v_f \sin (\theta+\delta) \\ &\dot{\theta}=\frac{v_f}{l} \sin \delta \end{aligned} \quad(III.4)

where the front wheel forward speed vfv_f is now used. The front wheel speed, vrv_r , is related to the rear wheel speed by

The planning and control problems for this model involve selecting the steering angle δ\delta within the mechanical limits of the vehicle δ∈[δmin⁡,δmax⁡]\delta \in\left[\delta_{\min }, \delta_{\max }\right], and forward speed vrv_r within an acceptable range, vr∈[vmin⁡,vmax⁡]v_r \in\left[v_{\min }, v_{\max }\right].

A simplification that is sometimes utilized, e.g. [56], is to select the heading rate ω\omega instead of steering angle δ\delta. These quantities are related by

θ˙=ω,ω∈[vrltan⁡δmin⁡,vrltan⁡δmax⁡](III.7)\dot{\theta}=\omega, \quad \omega \in\left[\frac{v_r}{l} \tan \delta_{\min }, \frac{v_r}{l} \tan \delta_{\max }\right] \quad(III.7)

In this situation, the model is sometimes referred to as the unicycle model since it can be derived by considering the motion of a single wheel.

An important variation of this model is the case when vrv_r is fixed. This is sometimes referred to as the Dubins car, after Lester Dubins who derived the minimum time motion between to points with prescribed tangents [57]. Another notable variation is the Reeds-Shepp car for which minimum length paths are known when vrv_r takes a single forward and reverse speed [58]. These two models have proven to be of some importance to motion planning and will be discussed further in Section IV.

The kinematic models are suitable for planning paths at low speeds (e.g. parking maneuvers and urban driving) where inertial effects are small in comparison to the limitations on mobility imposed by the no-slip assumption. A major drawback of this model is that it permits instantaneous steering angle changes which can be problematic if the motion planning module generates solutions with such instantaneous changes.

Continuity of the steering angle can be imposed by augmenting (III.4), where the steering angle integrates a commanded rate as in [49]. Equation (III.4) becomes

x˙f=vfcos⁡(θ+δ)y˙f=vfsin⁡(θ+δ)θ˙=vflsin⁡δδ˙=vδ(III.8)\begin{aligned} &\dot{x}_f=v_f \cos (\theta+\delta) \\ &\dot{y}_f=v_f \sin (\theta+\delta) \\ &\dot{\theta}=\frac{v_f}{l} \sin \delta \\ & \dot{\delta}=v_\delta \end{aligned}\quad(III.8)

In addition to the limit on the steering angle, the steering rate can now be limited: vδ∈[δ˙min⁡,δ˙max⁡]v_\delta \in\left[\dot{\delta}_{\min }, \dot{\delta}_{\max }\right]. The same problem can arise with the car’s speed vrv_r and can be resolved in the same way. The drawback to this technique is the increased dimension of the model which can complicate motion planning and control problems.

While the kinematic bicycle model and simple variations are very useful for motion planning and control, models considering wheel slip [59], inertia [18], [60]–[62], and chassis dynamics [60] can better utilize the vehicle’s capabilities for executing agile maneuvers. These effects become significant when planning motions with high acceleration and jerk.

## 🟠 B. Inertial Effects（惯性效应）

When the acceleration of the vehicle is sufficiently large, the no-slip assumption between the tire and ground becomes invalid. In this case a more accurate model for the vehicle is as a rigid body satisfying basic momentum principles. That is, the acceleration is proportional to the force generated by the ground on the tires. Taking pcp_c to be the vehicles center of mass, and a coordinate of the configuration (cf. Figure III.2), the motion of the vehicle is governed by

mp¨c=Ff+FrIzzθ¨=(pc−pf)×Ff+(pc−pr)×Fr(III.9)\begin{aligned} &m \ddot{p}_c=F_f+F_r \\ & I_{z z} \ddot{\theta}=\left(p_c-p_f\right) \times F_f+\left(p_c-p_r\right) \times F_r \end{aligned}\quad(III.9)

where FrF_r and FfF_f are the forces applied to the vehicle by the ground through the ground-tire interaction, mm is the vehicles total mass, and IzzI_{zz} is the polar moment of inertia in the e^z\hat{e}_z direction about the center of mass. In the following derivations we tacitly neglect the motion of pcp_c in the e^z\hat{e}_z direction with the assumptions that the road is level, the suspension is rigid and vehicle remains on the road.

The expressions for Fr and Ff vary depending on modeling assumptions [18], [59], [60], [62], but in any case the expression can be tedious to derive. Equations (III.10)-(III.15) therefore provide a detailed derivation as a reference.
FrF_rFfF_f的表达式随建模假设[18][59][60][62]而变化，但在任何情况下，推导该表达式都可能很繁琐。因此，方程(III.10)-(III.15)提供了详细的推导作为参考。

The force between the ground and tires is modeled as being dependent on the rate that the tire slips on the ground. Although the center of mass serves as a coordinate for the configuration, the velocity of each wheel relative to the ground is needed to determine this relative speed. The kinematic relations between these three points are

pr=pc+(−lrcos⁡θ−lrsin⁡θ0)p˙r=p˙c+(00θ˙)×(−lrcos⁡θ−lrsin⁡θ0)pf=pc+(lfcos⁡θlfsin⁡θ0)p˙f=p˙c+(00θ˙)×(lfcos⁡θlfsin⁡θ0)(III.10)\begin{aligned} &p_r=p_c+\left(\begin{array}{c} -l_r \cos \theta \\ -l_r \sin \theta \\ 0 \end{array}\right) \\ & \dot{p}_r=\dot{p}_c+\left(\begin{array}{c} 0 \\ 0 \\ & \dot{\theta} \end{array}\right) \times\left(\begin{array}{c} -l_r \cos \theta \\ -l_r \sin \theta \\ 0 \end{array}\right) \\ &p_f=p_c+\left(\begin{array}{c} l_f \cos \theta \\ l_f \sin \theta \\ 0 \end{array}\right) \\ &\dot{p}_f=\dot{p}_c+\left(\begin{array}{c} 0 \\ 0 \\ \dot{\theta} \end{array}\right) \times\left(\begin{array}{c} l_f \cos \theta \\ l_f \sin \theta \\ 0 \end{array}\right) \end{aligned}\quad(III.10)

These kinematic relations are used to determine the velocities of the point on each tire in contact with the ground, srs_r and sfs_f . The velocity of these points are referred to as the tire slip velocity. In general, srs_r and sfs_f differ from p˙r\dot{p}_r and p˙f\dot{p}_f through the angular velocity of the wheel. The kinematic relation is

sr=p˙r+ωr×Rsf=p˙f+ωf×R(III.11)\begin{aligned} & s_r=\dot{p}_r+\omega_r \times R \\ & s_f=\dot{p}_f+\omega_f \times R \end{aligned}\quad(III.11)

The angular velocities of the wheels are given by

ωr=(Ωrsin⁡θ−Ωrcos⁡θ0),ωf=(Ωfsin⁡(θ+δ)−Ωfcos⁡(θ+δ)0)(III.12)\omega_r=\left(\begin{array}{c} \Omega_r \sin \theta \\ -\Omega_r \cos \theta \\ 0 \end{array}\right), \quad \omega_f=\left(\begin{array}{c} \Omega_f \sin (\theta+\delta) \\ -\Omega_f \cos (\theta+\delta) \\ 0 \end{array}\right) \quad(III.12)

and R=(0,0,−r)TR=(0,0,-r)^T . The wheel radius is the scalar quantity rr, and Ω{r,f}\Omega_{\{r, f\}} are the angular speeds of each wheel relative to the car. This is illustrated for the rear wheel in Figure III.3
R=(0,0,−r)TR=(0,0,-r)^T 。车轮半径用标量 rr 表示，每个轮胎相对于汽车的角速率用 Ω{r,f}\Omega_{\{r, f\}} 表示。图3.3描绘了后轮上的各个变量之间的关系。

Under static conditions, or when the height of the center of mass can be approximated as pc⋅e^z≈0p_c \cdot \hat{e}_z \approx 0, the component of the force normal to the ground, F{r,f}⋅e^zF_{\{r, f\}} \cdot \hat{e}_z can be computed from a static force-torque balance as

Ff⋅e^z=lrmglf+lr,Fr⋅e^z=lfmglf+lr(III.13)F_f \cdot \hat{e}_z=\frac{l_r m g}{l_f+l_r}, \quad F_r \cdot \hat{e}_z=\frac{l_f m g}{l_f+l_r} \quad(III.13)

The normal force is then used to compute the traction force on each tire together with the slip and a friction coefficient model, μ\mu, for the tire behavior. The traction force on the rear tire is given component-wise by

Fr⋅e^x=−(Fr⋅e^z)μ(∥sr∥Ωrr)sr∥sr∥⋅e^xFr⋅e^y=−(Fr⋅e^z)μ(∥sr∥Ωrr)sr∥sr∥⋅e^y(III.14)\begin{aligned} & F_r \cdot \hat{e}_x=-\frac{\left(F_r \cdot \hat{e}_z\right) \mu\left(\frac{\left\|s_r\right\|}{\Omega_r r}\right) s_r}{\left\|s_r\right\|} \cdot \hat{e}_x \\ & F_r \cdot \hat{e}_y=-\frac{\left(F_r \cdot \hat{e}_z\right) \mu\left(\frac{\left\|s_r\right\|}{\Omega_r r}\right) s_r}{\left\|s_r\right\|} \cdot \hat{e}_y \end{aligned} \quad(III.14)

The same expression describes the front tire with the rr-subscript replaced by an ff-subscript. The formula above models the traction force as being anti-parallel to the slip with magnitude proportional to the normal force with a nonlinear dependence on the slip ratio (the magnitude of the slip normalized by Ωrr\Omega_r r for the rear and Ωfr\Omega_f r for the front). Combining (III.10)-(III.15) yields expressions for the net force on each wheel of the car in terms of the control variables, generalized coordinates, and their velocities. Equation (III.14), together with the following model for μ\mu, are a frequently used model for tire interaction with the ground. Equation (III.15) is a simplified version of the well known model due to Pacejka [63].

μ(∥sr∥Ωrr)=Dsin⁡(Carctan⁡(B∥sr∥Ωrr))(III.15)\mu\left(\frac{\left\|s_r\right\|}{\Omega_r r}\right)=D \sin \left(C \arctan \left(B \frac{\left\|s_r\right\|}{\Omega_r r}\right)\right) \quad (III.15)

The rotational symmetry of (III.14) together with the peak in (III.15) lead to a maximum norm force that the tire can exert in any direction. This peak is referred to as the friction circle depicted in Figure III.4

The models discussed in this section appear frequently in the literature on motion planning and control for driverless cars. They are suitable for the motion planning and control tasks discussed in this survey. However, lower level control tasks such as electronic stability control and active suspension systems typically use more sophisticated models for the chassis, steering and, drive-train.

## python range函数范围_Python中range函数的用法

range函数是python内置函数&#xff0c;允许用户在给定范围内生成一系列数字。根据用户传递给函数的参数变量来决定数字的开始和结束位置以及一个数字与另一个数字之间的差异 range()函数是Python中的内置函数&#xff0c;主要用于循环。接下来在文章中将为大家具体介绍这个函数…...

## [Buzz Today]2012.05.10

>> NVIDIA CUDA 4.1 Compiler Now Built on LLVM LLVM可是个好东西&#xff0c;在Apple力顶之下&#xff0c;这几年真是发展快快。 LLVM是知名的开源编译器技术基础架构&#xff0c;其模块设计可方便的加入新语言和处理器架构支持&#xff0c;目前支持C/C、Objective-C、…...

## linux的vi命令详解,linux vi命令详解

linux下使用vi编辑是很方便的&#xff0c;但是具体要怎么做呢?下面由学习啦小编为大家整理了linux下vi的相关命令&#xff0c;希望对大家有帮助!1.linux vi命令的基本观点基本上vi能够分为三种形态&#xff0c;区分是命令方式(command mode)、插入方式(Insert mode)和底行方式…...

## VISIO2016的安装报错

VISIO2016的安装报错 第一步 最好是将word卸载掉 &#xff0c;word的版本会直接影响你安装visio 装完visio之后在安装word 如果安装过程出现报错没写原因 可以查看事件日志 windows10左下方直接搜事件日志 根据问题百度 我出现的问题是关于 9CA88EE3-ACB7-47c8-AFC4-AB702511C2…...

## 2022实验室更新 DBCO-NH2,DBCO-Amine 叠氮化物功能化化合物

DBCO(二苯并环辛炔) 氨基衍生物&#xff0c;可与含有羧基的生化小分子形成稳定酰胺键连接。DBCO-NHS酯是一种与胺反应的化合物&#xff0c;可用于修饰含胺分子(在水性介质中的溶解度有限)。它与伯胺(例如赖氨酸的侧链氨基或多肽的N端氨基)在中性或弱碱性pH下反应形成共价键。这…...

## 软件开发者：猪与鸡的争论？

http://www.csdn.net/article/2012-10-25/2811167-Software-Developers-The-Chicken-or-the-P 摘要&#xff1a;当设计到给重大产品做决定时&#xff0c;谁拥有最终的决定权&#xff0c;是全身心投入开发软件的程序员还是将软件变成公司产品谋利的业务人员呢&#xff1f;本文引…...

## mysql的填充因子_SQL Server表索引：调整填充因子

SQL Server表索引有一种使自己稀疏的特性&#xff0c;表越大并且访问越频繁&#xff0c;就越需要一个合适的调整因子。SQL Server表索引的填充因子选项是最常见的针对索引的一种调优方法。索引的填充因子是一个百分比&#xff0c;用于告诉SQL Server每个叶级索引页可以填充多少…...

## HTTP-FLV直播初探-flv.js播放器使用实例

https://www.cnblogs.com/saysmy/p/7851911.html...

## 万维网的信息检索系统【计算机网络】

1.全文检索搜索与分类目录搜索 万维网是一个大规模的、联机式的信息储藏所。那么&#xff0c;应当采用什么方法才能找到所需的信息呢?如果已经知道存放该信息的网点&#xff0c;那么只要在浏览器的地址(Location)框内键入该网点的URL和回车键&#xff0c;就可进入该网点。但是…...

## CSDN 创始人蒋涛：世界被编码之后

“写代码 20 年&#xff0c;通过网络平台和社区&#xff0c;帮助中国的程序员更好成长&#xff0c;这是我最希望被大家记住的。”这是蒋涛接受 ZAKER 采访的开场白。文 | 李亚丽 视频 | 李耀华 摄影 | 王莉莉 本文经授权转自 ZAKER 太极拳、拳击、冥想和打坐&#xff0c;这是 C…...

## Mac 媒体格式转换软件Permute

Mac 媒体格式转换软件Permute 有时候会需要转换一些格式&#xff0c;这里介绍一款自己使用过后感觉比较方便的软件Permute。 permute mac软件介绍 Permute是一款Mac上易用的媒体格式转换工具&#xff0c;支持视频、音乐和图像的格式转换&#xff0c;通过拖拽支持批量格式转换…...

## opencv的图像基本操作（基于jupyter Notebook）

opencv的基本操作cv2是opencv在python中的缩写&#xff0c;函数开头用cv2cv2.imread(cat.jpg) #读入图片cat.jpgcv2.imwrite(mycat.png,img) #图片img保存为mycat.pngcv2.imshow(image,img) #创建窗口&#xff0c;显示图像cv2.waitKey(10000) #等待时间&#xff0c;以 毫秒为单…...

## 计算机科学速成课 Crash Course Computer Science 第三十集 万维网 The World Wide Web

GitHub链接&#xff1a;https://github.com/WilliamWuLH/My-notes-about-CCCS 如果你觉得不错可以 ⭐Star 和 Fork ❤ 计算机科学速成课 Crash Course Computer Science 第三十集 万维网 The World Wide Web 万维网&#xff08;World Wide Web&#xff09;和互联网&#xf…...

## 考试题讲解

1.目录创建与切换 mkdir---->make directory[rootXMJ ~]# mkdir /xmj #创建目录 [rootXMJ ~]# ll -ld /xmj/ drwxr-xr-x 2 root root 4096 May 30 09:51 /xmj/*-p表示递归创建 [rootXMJ xmj]# mkdir a/b/c mkdir: cannot create directory a/b/c: No such file or di…...

## 计算机语言range,python中range输出的方法

python中range输出的方法发布时间&#xff1a;2020-08-25 11:50:26来源&#xff1a;亿速云阅读&#xff1a;148作者&#xff1a;小新这篇文章主要介绍python中range输出的方法&#xff0c;文中介绍的非常详细&#xff0c;具有一定的参考价值&#xff0c;感兴趣的小伙伴们一定要…...

## Plotly基础教程

Plotly 基础教程 简介 Plotly 是一个非常强大的开源数据可视化框架&#xff0c;它通过构建基于 HTML 的交互式图表来显示信息&#xff0c;可创建各种形式的精美图表。本文所说的 Plotly 指的是 Plotly.js 的 Python 封装&#xff0c;plotly本身是个生态非常复杂的绘图工具&am…...

## Vue动态加载组件的两类方式（import和require）

1. 需求描述 最近开发的一个项目&#xff0c;涉及到这样一个需求&#xff1a;随着项目的不断推进&#xff0c;后台管理功能逐渐增多&#xff0c;与此同时&#xff0c;静态路由表也逐渐扩大&#xff0c;需要把静态路由方式转换为动态路由方式。要完成这样一个转换&#xff0c;有…...

## 关于oracle误删数据如何进行恢复

oracle数据库有类似回收站的功能&#xff0c;所以平时如果误删数据是有很大可能可以进行恢复的&#xff0c;前提是没有使用 truncate 方式来删除表以及没有使用 purge&#xff08;drop table table_name purge&#xff09; 1、误删单条数据时进行数据恢复&#xff1a; 首先通…...

## python中range的三种用法

range函数可以创建一个整数列表&#xff0c;一般用在for循环中 1.range(stop): 0 - stop-1 这个代表起始值是零 &#xff0c;终止值是stop-1&#xff0c;步长默认为1 for index in range(5): print(index is [%d]%(index)) 输出是&#xff1a; index is [0] index is [1] …...

## OSChina 周五乱弹 —— 谁家做的饭好吃 问新垣吉衣

2019独角兽企业重金招聘Python工程师标准>>> Osc乱弹歌单&#xff08;2018&#xff09;请戳&#xff08;这里&#xff09; 【今日歌曲】 胖达panda &#xff1a;分享Thia Megia的单曲《Colors Of The Wind》 《Colors Of The Wind》 - Thia Megia 手机党少年们想听…...

...

## windows实战常用命令

windows实战常用命令 jar 解压jar包 jar -xvf xxx.jar &#xff1a; 默认解压到当前目录 powershell调用curl powershell -c curl http://www.baidu.com -UseBasicParsing windows编为base64 certutil --encode a.txt encode.txt certutil --decode encode.txt a.txt windows输…...

## c语言课堂笔记,C语言课堂笔记.doc

C语言课堂笔记.doc第三讲.语言的控制结构三.循环结构1.while循环先判断,再循环 while条件 语句系列;2.do-while循环先循环,再判断 格式 do 语句系列; while条件;例求1234.100 s数 求2468100 求10 例输入n个数,统计其中能被3整除的数的个数, 输入-1时,终止输入 cnt例输入n个数,统…...

## Linux和windows互传文件

lrzsz&#xff1a; 1 yum install -y lrzsz 测试发送一个文件从Linux到windows 1 #sz text.txt 然后就会弹出一个放文件的窗口&#xff0c;选择一个位置即可&#xff01; 测试copy一个文件从windows到linux 当前目录 1 #rz 即可查看当面windows系统内的文件 选择传到当前目录…...

## MySQL中的代理和作业选向在那块_SQL Server代理(6/12)：作业里的工作流——深入作业步骤...

SQL Server代理是所有实时数据库的核心。代理有很多不明显的用法&#xff0c;因此系统的知识&#xff0c;对于开发人员还是DBA都是有用的。这系列文章会通俗介绍它的很多用法。如我们在这里系列的前几篇文章所见&#xff0c;SQL Server代理由一系列的作业步骤组成&#xff0c;每…...

## 锦州师范高等专科学校计算机系,数据库原理与应用 锦州师范高等专科学校 计算机系...

7.1 7.2 7.3 7.1.1 7.1.2 7.2.1 7.2.27.3.17.3.27.3.3SQL ServerSQL Server7.1 ---- SQL Server8K ---- ----WHEREORDER BY textimagecharvarcharbinary900BUPDATESELECT 1 2(1) (2) PRIMARY KEYPRIMARY KEY(3) 7.1.1 SQL Server 2000PK_ PK__********,* Primary KeyNONCLUST...

## W ndows7怎么看不到U盘,windows7插入u盘后没有提示修复原因和解决方法

U盘已经成为大家生活和办公中不可缺少的一部分了&#xff0c;经常使用U盘传输文件&#xff0c;但是有些用户将U盘插入 windows7系统 电脑后没有提示修复&#xff0c;正常情况下都会显示的&#xff0c;为什么windows7系统插入u盘后没有提示修复&#xff0c;带着这个疑问&#xf…...

## WINDOWSW 内核对象,继承特性

1.内核对象句柄的继承性 当父进程创建内核对象时&#xff0c;必须向系统指明&#xff0c;它希望对象的句柄是个可继承的句柄。父进程可以使用一个或多个内核对象句柄&#xff0c;并且该父进程可以决定生成一个子进程&#xff0c;为子进程赋予对父进程的内核对象的访问权。 注意…...

## windowsw网络编程 ping程序的实现

【实验目的】 1.熟悉原始套接字编程的基本流程 2.理解ping程序的实现机制 3.理解ICMP协议的基于作用和报文格式。 4.完成原始套接字的配置。 【实验内容】 1.构造ICMP协议首部结构 2.构造ICMP回射请求结构。 3.构造ICMP回射应答结构。 4.构造IP首部结构。 5.创建原始套接字。 …...

## 这本PyTorch官方出品的Deep Learning With PyTorch终于有了中文版

《Deep Learning With PyTorch》&#xff0c;一本深受广大深度学习爱好者喜欢的书。这本书由PyTorch官方出品&#xff0c;中文版已经出版啦&#xff01; 中文名&#xff1a;PyTorch深度学习实战 本书作者Eli Stevens职业生涯的大部分时间都在美国硅谷的初创公司工作&#xff0…...

## 微软出品·kubernetes学习路线

Kubernetes正在席卷应用开发世界。到2022年&#xff0c;全球超过75&#xff05;的组织将在生产环境中运行容器化应用程序。Kubernetes正在塑造应用程序开发和管理的未来-微软希望今天帮助您开始使用它。 于是微软出品了一个Kubernetes的学习路径指南 本指南适用于有兴趣进一步…...

## 字节跳动出品的 Flutter 应用内调试工具 UME 正式开源

2020 年 11 月&#xff0c;西瓜 Flutter 团队在字节跳动技术团队公众号上发布了 UME 工具的功能介绍和预览&#xff0c;今年 3 月 25 日的 Flutter Engage China 活动上&#xff0c;字节跳动 Flutter 技术负责人袁辉辉在 介绍 Flutter 业务的大规模落地的演讲 中也到了 UME 工具…...

## anki公司即将出品Vector家庭机器人(正在预售)

anki公司出品Vector家庭机器人&#xff08;cozmo升级版&#xff09;正在预售&#xff08;\$212.49&#xff09; 特点&#xff1a; 1、红外线激光扫描器&#xff08;用于远程跟踪&#xff0c;绘制周边地图&#xff0c;范围为1米&#xff0c;当转动时可达360度&#xff09; 2、掉落…...

## 制片人、出品人、监制、特别出演分别指的是什么？

1、出品人&#xff08;presented by&#xff09; 这个词是中国制造&#xff0c;国外只列出出品公司&#xff0c;淡化资方个人影响力&#xff01;因此英文也挺中式的。 出品人是电影投资方的法定代表人&#xff0c;一般是董事长&#xff0c;不一定是老板。 一部戏必须有金主出…...

## 网络推广主要几种形式

1、登录搜索引擎　　2、网站目录登录推广　　3、在线黄页登录推广　　4、博客营销推广　　5、知道营销推广 　　6、网络广告推广(包含广告互换) 　　7、电子邮件推广 　　8、网址导航推广 　　9、IM方式(QQ,MSN,雅虎通) 　　10、排名营销推广 　　11、事件营销推广 　　12 、免…...

## JVM之历代垃圾收集器详解

JVM之历代垃圾收集器讲解总览分类并行和并发年轻代垃圾回收器Serial收集器特点优点缺点PartNew收集器特点&#xff1a;Parallel Scavenge收集器特点老年代垃圾回收器Serial Old收集器Parallel Old收集器组合CMS收集器特点工作流程1.初始标记2.并发标记3.重新标记4.并发清除G1 收…...

## 使用Python开启局域网传送数据（3）：使用 simple_http_server 实现上传下载功能

&#x1f4a1;温馨提示&#xff1a;本文测试环境&#xff1a;windows11 64位、Python3.9。 摘要&#xff1a;本文将介绍在 Windows 系统中如何使用 Python 的第三方模块 simple_http_server 实现在局域网中传送数据&#xff0c;仅限于别人上传文件给自己的功能&#xff0c;不具…...

## mybatis-plus的批量新增insertBatchSomeColumn

MyBatis-Plus 是基于 MyBatis 进行封装的一套优秀的持久层框架&#xff0c;它提供了丰富的便捷操作方法和强大的代码生成器&#xff0c;大大简化了 MyBatis 的使用。在 MyBatis-Plus 中&#xff0c;我们可以使用 insertBatchSomeColumn 方法来实现批量新增指定字段的操作。 myb…...

## 2023-第十四届蓝桥杯冲刺计划！

&#x1f4ac;前言 &#x1f4a1;本文以目录形式列举大纲,可根据题目点击跳转 &#x1f308;冲刺阶段目的&#xff1a;把握高频重点,结合基础算法和常考题型总结,用真题进行模拟练习 根据自己的能力熟练目前已掌握的算法&#xff0c;不会的还可以暴力 ⏳最后三个星期大家一起冲…...

## Applications of fractional calculus in computer vision: A survey

Abstract 分数阶微积分是一种抽象的概念&#xff0c;探索了具有非整数阶微分的解释。很长一段时间以来&#xff0c;它被认为是一个纯理论问题。然而&#xff0c;引入了几个有用的分数阶导数定义&#xff0c;扩展了其应用范围。在计算能力和算法表示的支持下&#xff0c;分数阶…...

## 报名开启 | 共赴一场 Flutter 的春日宴

2023 年 1 月 25 日&#xff0c;Flutter Forward 大会在肯尼亚首都内罗毕成功举办&#xff0c;吸引了全球范围内开发者广泛的关注和反馈。为了扩大 Flutter Forward 活动在全球的影响力&#xff0c;并以中国本地语言回顾最新的 Flutter 相关发布&#xff0c;谷歌开发者社区 (GD…...

## JVM知识整理

JVM知识整理 JVM的主要组成部分 JVM包含两个两个子系统&#xff08;类加载子系统和执行引擎&#xff09;和两个组件&#xff08;运行时数据区与和本地库接口&#xff09; 类加载子系统&#xff1a;根据给定的全限定类名来加载class文件到运行时数据区域中的方法区。执行引擎&a…...

## git 相关操作-提交代码步骤

https://blog.csdn.net/matrix_google/article/details/87988330 clone代码和切换分支 git clone -b v1.2 git192.168.3.198:qq/pp.gitgit checkout 分支名# git从远程仓库中拉取新的指定分支&#xff1a;若本地分支不存在的情况: git checkout -b 本地分支名称 origin/远程分…...

## Windows IDEA 导入java maven项目

Windows 参考https://www.bilibili.com/video/av78474321/ 准备 java jdk1.8 安装教程配置环境变量 https://www.cnblogs.com/mr-wuxiansheng/p/6850437.html maven apache-maven-3.6.3 建议放在用户权限的位置&#xff0c;有修改内容&#xff0c;保证有权限修改配置环境…...

## AIGC图像生成的原理综述与落地畅想

AIGC&#xff0c;这个当前的现象级词语。本文尝试从文生图的发展、对其当前主流的 Stable Diffusion 做一个综述。以下为实验按要求生成的不同场景、风格控制下的生成作品。概述▐ 技术演进一&#xff1a;昙花初现 GAN 家族GAN 系列算法开启了图片生成的新起点。GAN的主要灵感…...

## 三级数据库备考--数据库应用系统开发方法（二）（错题整理）

1.数据库应用系统设计包括概念设计、逻辑设计、物理设计3个步骤&#xff0c;每个步骤的设计活动按照数据组织与存储、数据访问与处理、应用设计等几个方面进行。在数据库概念设计阶段&#xff0c;采用自下而上的 E-R 设计。将关系模式转换为具体 DBMS 平台支持的关系表是数据库…...

## 电子招标采购系统源码—企业战略布局下的采购

​ 智慧寻源 多策略、多场景寻源&#xff0c;多种看板让寻源过程全程可监控&#xff0c;根据不同采购场景&#xff0c;采取不同寻源策略&#xff0c; 实现采购寻源线上化管控&#xff1b;同时支持公域和私域寻源。 询价比价 全程线上询比价&#xff0c;信息公开透明&#xff0…...

## 内存DDR4和DDR5的区别

1&#xff09;内存频率&#xff0c;DDR5相比DDR4频率实现翻倍&#xff0c;DDR4刚上市时&#xff0c;主流内存频率一般只有2133和2400MHZ&#xff0c; 后期才进一步将内存的频率提升到2666MHZ或以上&#xff0c;目前旗舰级的DDR4内存频率可以做到4266MHZ或者 更…...

## 【免费分享】全球海洋测深DEM（GEBCO）数据集

&#xff08;本文首发于“水经注GIS”公号&#xff0c;订阅“水经注GIS”公号&#xff0c;为你分享更多GIS技术 &#xff09;1、概述GEBCO&#xff08;General Bathymetric Chart of the Oceans&#xff09;全球 DEM数据集&#xff08;Geo-Engineering Digital Savage&#xff…...

## 【ROS学习笔记17】ROS常用仿真组件URDF集成Gazebo

【ROS学习笔记17】ROS常用仿真组件URDF集成Gazebo 文章目录【ROS学习笔记17】ROS常用仿真组件URDF集成Gazebo前言1. URDF集成Gazebo1.1 URDF与Gazebo基本集成流程1.2 URDF集成Gazebo相关设置1.3 URDF集成Gazebo实操1.4 Gazebo仿真环境搭建2. URDF、Gazebo、Rviz综合应用2.1 机器…...

## 【vue2】vue2中的性能优化（持续更新中）

⭐ v-for 遍历避免同时使用 v-if ⭐ v-for 中的key绑定唯一的值 ⭐ v-show与v-if对性能的影响 ⭐ 妙用计算属性 ⭐ 使用防抖与节流控制发送频率 ⭐ 路由守卫处理请求避免重复发送请求 ⭐ 使用第三方UI库的引入方式 【前言】 该系列是博主在使用vue2开发项目中常用上的一…...

## JavaEE-线程安全问题

1.线程安全的概念 如果多线程环境下代码运行的结果是符合我们预期的&#xff0c;即在单线程环境应该的结果&#xff0c;则说这个程序是线 程安全的. 为啥会出现线程安全问题? 本质原因: 线程在系统中的调度是无序的/随机的 (抢占式执行). 2.开始说明 先看个线程不安全的例子…...

## C++11：改善程序性能

1 右值引用 1.1 右值引用的特性 C11中所有的值必属于左值、将亡值、纯右值三者之一。将亡值和纯右值都属于右值。区分表达式的左右值属性有一个简便方法:若可对表达式用&符取址&#xff0c;则为左值&#xff0c;否则为右值。 比如&#xff0c;简单的赋值语句: int i 0;…...