CARLA
 
载入中...
搜索中...
未找到
Public 成员函数 | 静态 Public 成员函数 | Protected 成员函数 | Private 类型 | Private 属性 | 所有成员列表
ADVSCamera类 参考

产生动态视觉事件的传感器 更多...

#include <DVSCamera.h>

+ 类 ADVSCamera 继承关系图:
+ ADVSCamera 的协作图:

Public 成员函数

 ADVSCamera (const FObjectInitializer &ObjectInitializer)
 
void Set (const FActorDescription &ActorDescription) override
 
- Public 成员函数 继承自 AShaderBasedSensor
bool AddPostProcessingMaterial (const FString &Path)
 Load the UMaterialInstanceDynamic at the given Path and append it to the list of shaders with Weight.
 
void AddShader (const FSensorShader &Shader)
 Add a post-processing shader.
 
 AShaderBasedSensor (const FObjectInitializer &ObjectInitializer)
 
void Set (const FActorDescription &ActorDescription) override
 
void SetFloatShaderParameter (uint8_t ShaderIndex, const FName &ParameterName, float Value)
 
- Public 成员函数 继承自 ASceneCaptureSensor
bool ArePostProcessingEffectsEnabled () const
 
 ASceneCaptureSensor (const FObjectInitializer &ObjectInitializer)
 
void Enable16BitFormat (bool Enable=false)
 
void EnablePostProcessingEffects (bool Enable=true)
 
void EnqueueRenderSceneImmediate ()
 Immediate enqueues render commands of the scene at the current time.
 
float GetAperture () const
 
int GetBladeCount () const
 
float GetBloomIntensity () const
 
USceneCaptureComponent2DGetCaptureComponent2D ()
 
UTextureRenderTarget2D * GetCaptureRenderTarget ()
 
float GetChromAberrIntensity () const
 
float GetChromAberrOffset () const
 
float GetDepthBlurAmount () const
 
float GetDepthBlurRadius () const
 
float GetDepthOfFieldMinFstop () const
 
float GetExposureCalibrationConstant () const
 
float GetExposureCompensation () const
 
float GetExposureMaxBrightness () const
 
EAutoExposureMethod GetExposureMethod () const
 
float GetExposureMinBrightness () const
 
float GetExposureSpeedDown () const
 
float GetExposureSpeedUp () const
 
float GetFilmBlackClip () const
 
float GetFilmShoulder () const
 
float GetFilmSlope () const
 
float GetFilmToe () const
 
float GetFilmWhiteClip () const
 
float GetFocalDistance () const
 
float GetFOVAngle () const
 
uint32 GetImageHeight () const
 
uint32 GetImageWidth () const
 
float GetISO () const
 
float GetLensFlareIntensity () const
 
float GetMotionBlurIntensity () const
 
float GetMotionBlurMaxDistortion () const
 
float GetMotionBlurMinObjectScreenSize () const
 
float GetShutterSpeed () const
 
float GetTargetGamma () const
 
float GetWhiteTemp () const
 
float GetWhiteTint () const
 
bool Is16BitFormatEnabled () const
 
bool ReadPixels (TArray< FColor > &BitMap) const
 Use for debugging purposes only.
 
void SaveCaptureToDisk (const FString &FilePath) const
 Use for debugging purposes only.
 
void SetAperture (float Aperture)
 
void SetBladeCount (int Count)
 
void SetBloomIntensity (float Intensity)
 
void SetChromAberrIntensity (float Intensity)
 
void SetChromAberrOffset (float ChromAberrOffset)
 
void SetDepthBlurAmount (float Amount)
 
void SetDepthBlurRadius (float Radius)
 
void SetDepthOfFieldMinFstop (float MinFstop)
 
void SetExposureCalibrationConstant (float Constant)
 
void SetExposureCompensation (float Compensation)
 
void SetExposureMaxBrightness (float Brightness)
 
void SetExposureMethod (EAutoExposureMethod Method)
 
void SetExposureMinBrightness (float Brightness)
 
void SetExposureSpeedDown (float Speed)
 
void SetExposureSpeedUp (float Speed)
 
void SetFilmBlackClip (float BlackClip)
 
void SetFilmShoulder (float Shoulder)
 
void SetFilmSlope (float Slope)
 
void SetFilmToe (float Toe)
 
void SetFilmWhiteClip (float WhiteClip)
 
void SetFocalDistance (float Distance)
 
void SetFOVAngle (float FOVAngle)
 
void SetImageSize (uint32 Width, uint32 Height)
 
void SetISO (float ISO)
 
void SetLensFlareIntensity (float Intensity)
 
void SetMotionBlurIntensity (float Intensity)
 
void SetMotionBlurMaxDistortion (float MaxDistortion)
 
void SetMotionBlurMinObjectScreenSize (float ScreenSize)
 
void SetShutterSpeed (float Speed)
 
void SetTargetGamma (float InTargetGamma)
 
void SetWhiteTemp (float Temp)
 
void SetWhiteTint (float Tint)
 
void WaitForRenderThreadToFinish ()
 Blocks until the render thread has finished all it's tasks.
 
- Public 成员函数 继承自 ASensor
 ASensor (const FObjectInitializer &ObjectInitializer)
 
boost::optional< FActorAttributeGetAttribute (const FString Name)
 
const UCarlaEpisode & GetEpisode () const
 
URandomEngineGetRandomEngine ()
 
int32 GetSeed () const
 
auto GetToken () const
 Return the token that allows subscribing to this sensor's stream.
 
bool IsStreamReady ()
 
FDataStream MoveDataStream ()
 
virtual void OnFirstClientConnected ()
 
virtual void OnLastClientDisconnected ()
 
void PostPhysTickInternal (UWorld *World, ELevelTick TickType, float DeltaSeconds)
 
void SetDataStream (FDataStream InStream)
 Replace the FDataStream associated with this sensor.
 
void SetEpisode (const UCarlaEpisode &InEpisode)
 
void SetSeed (int32 InSeed)
 
void Tick (const float DeltaTime) final
 

静态 Public 成员函数

static FActorDefinition GetSensorDefinition ()
 

Protected 成员函数

void ImageToGray (const TArray< FColor > &image)
 
void ImageToLogGray (const TArray< FColor > &image)
 
virtual void PostPhysTick (UWorld *World, ELevelTick TickType, float DeltaTime) override
 
ADVSCamera::DVSEventArray Simulation (float DeltaTime)
 
- Protected 成员函数 继承自 AShaderBasedSensor
void SetUpSceneCaptureComponent (USceneCaptureComponent2D &SceneCapture) override
 
- Protected 成员函数 继承自 ASceneCaptureSensor
virtual void BeginPlay () override
 
void CaptureSceneExtended ()
 
virtual void EndPlay (const EEndPlayReason::Type EndPlayReason) override
 
virtual void PrePhysTick (float DeltaSeconds) override
 
virtual void SendGBufferTextures (FGBufferRequest &GBuffer)
 
template<typename T >
void SendGBufferTexturesInternal (T &Self, FGBufferRequest &GBufferData)
 
- Protected 成员函数 继承自 ASensor
void EndPlay (EEndPlayReason::Type EndPlayReason) override
 
template<typename SensorT >
FAsyncDataStream GetDataStream (const SensorT &Self)
 Return the FDataStream associated with this sensor.
 
void PostActorCreated () override
 

Private 类型

using DVSEventArray = std::vector<::carla::sensor::data::DVSEvent>
 

Private 属性

dvs::Config config
 动态时间传感器的仿真配置
 
std::int64_t current_time
 以纳秒为单位的当前时间
 
TArray< double > last_event_timestamp
 包含以秒为单位的最新事件时间的图像
 
TArray< float > last_image
 包含最新(当前)图像和先前图像的图像
 
TArray< float > prev_image
 
TArray< float > ref_values
 包含触发事件最新参考值的图像
 

额外继承的成员函数

- Public 属性 继承自 ASceneCaptureSensor
struct { 
 
   FCameraGBufferUint8   CustomDepth 
 
   FCameraGBufferUint8   CustomStencil 
 
   FCameraGBufferUint8   GBufferA 
 
   FCameraGBufferUint8   GBufferB 
 
   FCameraGBufferUint8   GBufferC 
 
   FCameraGBufferUint8   GBufferD 
 
   FCameraGBufferUint8   GBufferE 
 
   FCameraGBufferUint8   GBufferF 
 
   FCameraGBufferUint8   SceneColor 
 
   FCameraGBufferUint8   SceneDepth 
 
   FCameraGBufferUint8   SceneStencil 
 
   FCameraGBufferUint8   SSAO 
 
   FCameraGBufferUint8   Velocity 
 
CameraGBuffers 
 
- Protected 属性 继承自 ASceneCaptureSensor
bool bEnable16BitFormat = false
 Whether to change render target format to PF_A16B16G16R16, offering 16bit / channel
 
bool bEnablePostProcessingEffects = true
 Whether to render the post-processing effects present in the scene.
 
USceneCaptureComponent2D_CARLACaptureComponent2D = nullptr
 Scene capture component.
 
UTextureRenderTarget2D * CaptureRenderTarget = nullptr
 Render target necessary for scene capture.
 
uint32 ImageHeight = 600u
 Image height in pixels.
 
uint32 ImageWidth = 800u
 Image width in pixels.
 
float TargetGamma = 2.4f
 
- Protected 属性 继承自 ASensor
bool bIsActive = false
 
URandomEngineRandomEngine = nullptr
 Random Engine used to provide noise for sensor output.
 
int32 Seed = 123456789
 Seed of the pseudo-random engine.
 

详细描述

产生动态视觉事件的传感器

在文件 DVSCamera.h51 行定义.

成员类型定义说明

◆ DVSEventArray

在文件 DVSCamera.h54 行定义.

构造及析构函数说明

◆ ADVSCamera()

ADVSCamera::ADVSCamera ( const FObjectInitializer & ObjectInitializer)

在文件 DVSCamera.cpp29 行定义.

引用了 AShaderBasedSensor::AddPostProcessingMaterial(), ASceneCaptureSensor::EnablePostProcessingEffects() , 以及 ASensor::RandomEngine.

+ 函数调用图:

成员函数说明

◆ GetSensorDefinition()

FActorDefinition ADVSCamera::GetSensorDefinition ( )
static

在文件 DVSCamera.cpp41 行定义.

引用了 Bool, FActorVariation::bRestrictToRecommended, Float, FActorVariation::Id, Int, UActorBlueprintFunctionLibrary::MakeCameraDefinition(), FActorVariation::RecommendedValues , 以及 FActorVariation::Type.

+ 函数调用图:

◆ ImageToGray()

void ADVSCamera::ImageToGray ( const TArray< FColor > & image)
protected

合理性检查

保存 HxW 个元素

将图像转化为灰度原始图像值

在文件 DVSCamera.cpp214 行定义.

引用了 FColorToGrayScaleFloat() , 以及 last_image.

被这些函数引用 PostPhysTick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ ImageToLogGray()

void ADVSCamera::ImageToLogGray ( const TArray< FColor > & image)
protected

合理性检查

保存 HxW 个元素

将图像转化为灰度原始图像值

在文件 DVSCamera.cpp231 行定义.

引用了 config, FColorToGrayScaleFloat(), last_image , 以及 dvs::Config::log_eps.

被这些函数引用 PostPhysTick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ PostPhysTick()

void ADVSCamera::PostPhysTick ( UWorld * World,
ELevelTick TickType,
float DeltaTime )
overrideprotectedvirtual

在当前时刻,场景的立刻入队渲染命令。

读取图像

将图像转换为灰度图

动态视觉传感器仿真器

发送事件

重载 ASceneCaptureSensor .

在文件 DVSCamera.cpp134 行定义.

引用了 ASceneCaptureSensor::CaptureRenderTarget, config, carla::BufferView::CreateFrom(), ASceneCaptureSensor::EnqueueRenderSceneImmediate(), carla::streaming::detail::token_type::get_stream_id(), ASensor::GetAttribute(), ASensor::GetDataStream(), carla::ros2::ROS2::GetInstance(), FDataStreamTmpl< T >::GetSensorType(), ASensor::GetToken(), ImageToGray(), ImageToLogGray(), PostPhysTick(), ASceneCaptureSensor::ReadPixels(), carla::sensor::CompositeSerializer< Items >::Serialize(), Simulation(), ASensor::Stream, dvs::Config::use_log , 以及 ASceneCaptureSensor::WaitForRenderThreadToFinish().

被这些函数引用 PostPhysTick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ Set()

void ADVSCamera::Set ( const FActorDescription & ActorDescription)
overridevirtual

◆ Simulation()

ADVSCamera::DVSEventArray ADVSCamera::Simulation ( float DeltaTime)
protected

事件数组

合理性检查

检查初始化

设置第一个渲染的图像

将数组大小调整为给定的元素数量。新元素将被归零。

重置当前时间

以纳秒表示的时间增量

沿着图像大小循环

取消事件,因为距离上次事件的时间 小于 不应期refractory_period_ns

更新当前时间

在文件 DVSCamera.cpp250 行定义.

引用了 dvs::Config::Cm, config, dvs::Config::Cp, current_time, ASensor::GetEpisode(), ASceneCaptureSensor::GetImageHeight(), ASceneCaptureSensor::GetImageWidth(), URandomEngine::GetNormalDistribution(), last_event_timestamp, last_image, dvs::nanosecToSecTrunc(), prev_image, ASensor::RandomEngine, ref_values, dvs::Config::refractory_period_ns, dvs::secToNanosec(), dvs::Config::sigma_Cm , 以及 dvs::Config::sigma_Cp.

被这些函数引用 PostPhysTick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

类成员变量说明

◆ config

dvs::Config ADVSCamera::config
private

动态时间传感器的仿真配置

在文件 DVSCamera.h81 行定义.

被这些函数引用 ImageToLogGray(), PostPhysTick(), Set() , 以及 Simulation().

◆ current_time

std::int64_t ADVSCamera::current_time
private

以纳秒为单位的当前时间

在文件 DVSCamera.h78 行定义.

被这些函数引用 Simulation().

◆ last_event_timestamp

TArray<double> ADVSCamera::last_event_timestamp
private

包含以秒为单位的最新事件时间的图像

在文件 DVSCamera.h75 行定义.

被这些函数引用 Simulation().

◆ last_image

TArray<float> ADVSCamera::last_image
private

包含最新(当前)图像和先前图像的图像

在文件 DVSCamera.h69 行定义.

被这些函数引用 ImageToGray(), ImageToLogGray() , 以及 Simulation().

◆ prev_image

TArray<float> ADVSCamera::prev_image
private

在文件 DVSCamera.h69 行定义.

被这些函数引用 Simulation().

◆ ref_values

TArray<float> ADVSCamera::ref_values
private

包含触发事件最新参考值的图像

在文件 DVSCamera.h72 行定义.

被这些函数引用 Simulation().


该类的文档由以下文件生成: