|
CARLA
|
Sensor that produces "depth" images. More...
#include <DepthCamera_WideAngleLens.h>
Inheritance diagram for ADepthCamera_WideAngleLens:Public Member Functions | |
| ADepthCamera_WideAngleLens (const FObjectInitializer &ObjectInitializer) | |
Public Member Functions inherited from AShaderBasedSensor_WideAngleLens | |
| bool | AddPostProcessingMaterial (const FString &Path) |
| void | AddShader (const FSensorShader &Shader) |
| Add a post-processing shader. | |
| AShaderBasedSensor_WideAngleLens (const FObjectInitializer &ObjectInitializer) | |
| void | Set (const FActorDescription &ActorDescription) override |
| void | SetFloatShaderParameter (uint8_t ShaderIndex, const FName &ParameterName, float Value) |
Public Member Functions inherited from ASceneCaptureSensor_WideAngleLens | |
| ASceneCaptureSensor_WideAngleLens (const FObjectInitializer &ObjectInitializer) | |
| void | EnablePostProcessingEffects (bool Enable=true) |
| void | EnqueueRenderSceneImmediate () |
| Immediate enqueues render commands of the scene at the current time. | |
| const TArray< float > & | GetCameraCoefficients () const |
| ECameraModel | GetCameraModel () const |
| TArrayView< USceneCaptureComponent2D_CARLA * > | GetCaptureComponents2D () |
| UTextureRenderTarget2D * | GetCaptureRenderTarget () |
| const FRHISamplerState * | GetCubemapSampler () const |
| int32 | GetFaceSize () const |
| float | GetFocalLength () const |
| float | GetFOVAngle () const |
| float | GetFOVAngleX () const |
| float | GetFOVAngleY () const |
| float | GetFOVFadeSize () const |
| bool | GetFOVMaskEnable () const |
| uint32 | GetImageHeight () const |
| FIntPoint | GetImageSize () const |
| uint32 | GetImageWidth () const |
| const TArray< float > & | GetLensLUT () const |
| float | GetLensThetaMax () const |
| FRHIGPUReadbackPoolPtr | GetReadbackPool () const |
| Recycling pool of GPU readback staging buffers for the projected image (created in BeginPlay, dropped in EndPlay), as ASceneCaptureSensor owns one for the pinhole cameras; without it every frame allocated a fresh staging buffer. | |
| bool | GetRenderEquirectangular () const |
| float | GetRenderEquirectangularLongitudeOffset () const |
| bool | GetRenderPerspective () const |
| const FCarlaShowOnlyFilter & | GetShowOnlyFilter () const |
| float | GetTargetGamma () const |
| bool | GetUseRayTracing () const |
| bool | HasExplicitLensIntrinsics () const |
| bool | IsShowOnlyEnabled () const |
| void | SetCameraCoefficients (const TArray< float > &Coefficients) |
| void | SetCameraCoefficients (TArrayView< const float > Coefficients) |
| void | SetCameraModel (ECameraModel NewCameraModel) |
| void | SetCubemapSampler (FRHISamplerState *NewCubemapSampler) |
| void | SetFaceSize (int32 Side) |
| Side length in pixels of the six cube-face render targets. | |
| void | SetFocalLength (float NewFocalLength) |
| void | SetFOVAngle (float NewFOV) |
| void | SetFOVFadeSize (float NewFOVFadeSize) |
| void | SetFOVMaskEnable (bool bEnable) |
| void | SetImageSize (int32 Width, int32 Height) |
| void | SetImageSize (uint32 Width, uint32 Height) |
| void | SetLensIntrinsics (float Fx, float Fy, float Cx, float Cy) |
| Explicit intrinsics in normalized viewport units, the same convention as sensor.camera.rt_lens: x_px = (Cx + Fx * R * cos(phi)) * Width, y_px = (Cy + Fy * R * sin(phi)) * Height. | |
| void | SetLensLUT (const TArray< float > &Samples, float ThetaMaxRadians) |
| LUT1D camera model: R(Theta) samples, uniformly spaced over [0, ThetaMaxRadians], monotonically non-decreasing, in the normalized units of the lens intrinsics (pixel = c + f * R, see SetLensIntrinsics). | |
| void | SetRenderEquirectangular (bool bEnable) |
| void | SetRenderEquirectangularLongitudeOffset (float Shift) |
| void | SetRenderPerspective (bool bEnable) |
| void | SetShadowCatcherTags (const FString &CommaSeparatedLabels) |
| void | SetShowOnlyActorIds (const FString &CommaSeparatedIds) |
| void | SetShowOnlyTags (const FString &CommaSeparatedLabels) |
| Show-only render mode (see FCarlaShowOnlyFilter); applied to all six face captures. | |
| void | SetTargetGamma (float Gamma) |
| void | SetUseRayTracing (bool Enable) |
| void | WaitForRenderThreadToFinish () |
| Blocks until the render thread has finished all its tasks. | |
Public Member Functions inherited from ASensor | |
| bool | AreClientsListening () |
| ASensor (const FObjectInitializer &ObjectInitializer) | |
| void | ClearReadyToTick () |
| std::optional< FActorAttribute > | GetAttribute (const FString Name) |
| const UCarlaEpisode & | GetEpisode () const |
| virtual void | GetMirrorState (carla::multigpu::SensorState &State) const |
| Multi-GPU: the runtime state this sensor starts its next tick from (noise generator, sweep angle, history). | |
| URandomEngine * | GetRandomEngine () |
| float | GetReadyToTickDeltaSeconds () const |
| int32 | GetSeed () const |
| auto | GetToken () const |
| Return the token that allows subscribing to this sensor's stream. | |
| bool | IsReadyToTick () const |
| 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) |
| virtual void | SetMirrorState (const carla::multigpu::SensorState &State) |
| void | SetPrimaryTick (float DeltaSeconds) |
| Multi-GPU secondary: tick in this engine frame, with the primary's delta. | |
| void | SetSavingDataToDisk (bool bSavingData) |
| void | SetSeed (int32 InSeed) |
| void | Tick (const float DeltaTime) final |
Static Public Member Functions | |
| static FActorDefinition | GetSensorDefinition () |
Static Public Member Functions inherited from ASceneCaptureSensor_WideAngleLens | |
| template<typename TSensor > | |
| static void | CaptureAndSendToClient (TSensor &Sensor) |
| Capture the six faces, project them into the lens, and deliver the image through ImageUtil's per-tick batched readback – the same path as every raster camera (ASceneCaptureCamera::PostPhysTick). | |
Static Public Member Functions inherited from ASensor | |
| static FSensorCaptureContext | MakeCaptureContext (const ASensor &Sensor) |
| Call on the game thread right after CaptureScene(). | |
Protected Member Functions | |
| FLinearColor | GetInvalidPixelColor () const override |
| Pixels outside the lens' calibrated range decode to the far plane (all channels 255 -> 1000 m) rather than to zero depth. | |
| void | PostPhysTick (UWorld *World, ELevelTick TickType, float DeltaSeconds) override |
Protected Member Functions inherited from AShaderBasedSensor_WideAngleLens | |
| void | SetUpSceneCaptureComponents (TArrayView< USceneCaptureComponent2D_CARLA * > SceneCaptures) override |
Protected Member Functions inherited from ASceneCaptureSensor_WideAngleLens | |
| virtual void | BeginPlay () override |
| void | CaptureSceneExtended () |
| uint8 | ComputeCubemapRenderMask () const |
| virtual void | EndPlay (const EEndPlayReason::Type EndPlayReason) override |
| uint8 | FindFaceIndex (FVector2D UV) const |
| virtual void | PrePhysTick (float DeltaSeconds) override |
| float | VerticalToHorizontal (float Value) const |
Protected Member Functions inherited from ASensor | |
| void | EndPlay (EEndPlayReason::Type EndPlayReason) override |
| template<typename SensorType > | |
| FAsyncDataStream | GetDataStream (SensorType &&Self) |
| Return the FDataStream associated with this sensor. | |
| void | PostActorCreated () override |
Additional Inherited Members | |
Static Protected Member Functions inherited from ASensor | |
| template<typename SensorType , typename ElementType > | |
| static void | SendDataToClient (SensorType &&Sensor, TArrayView< ElementType > SensorData, const FSensorCaptureContext &CaptureContext) |
Protected Attributes inherited from ASceneCaptureSensor_WideAngleLens | |
| bool | bEnable16BitFormat: 1 |
| bool | bEnablePostProcessingEffects: 1 |
| bool | bExplicitIntrinsics: 1 |
| bool | bFOVMaskEnable: 1 |
| bool | bRenderEquirectangular: 1 |
| bool | bRenderPerspective: 1 |
| bool | bUseRayTracing: 1 |
| ECameraModel | CameraModel |
| UTextureRenderTarget2D * | CaptureRenderTarget |
| uint8 | CubemapRenderMask |
| FRHISamplerState * | CubemapSampler |
| TArray< USceneCaptureComponent2D_CARLA * > | FaceCaptures |
| TArray< UTextureRenderTarget2D * > | FaceRenderTargets |
| int32 | FaceSize = 0 |
| float | FOVFadeSize |
| uint32 | ImageHeight |
| uint32 | ImageWidth |
| TArray< float > | KannalaBrandtCameraCoefficients |
| FVector4f | LensIntrinsics |
| TArray< float > | LensLUT |
| float | LensThetaMax |
| float | LongitudeOffset |
| int32 | NumCaptures = 0 |
| Captures rendered as camera cuts since BeginPlay (carla.Camera.SpawnCameraCuts). | |
| FRHIGPUReadbackPoolPtr | ReadbackPool |
| FCarlaShowOnlyFilter | ShowOnlyFilter |
| Show-only actor filter, applied to every face capture right before the faces are captured (see FCarlaShowOnlyFilter). | |
| float | TargetGamma |
| float | XFOVAngle |
| float | YFocalLength |
| float | YFOVAngle |
Protected Attributes inherited from ASensor | |
| bool | bIsActive = false |
| bool | bSavingDataToDisk = false |
| URandomEngine * | RandomEngine = nullptr |
| Random Engine used to provide noise for sensor output. | |
| int32 | Seed = 123456789 |
| Seed of the pseudo-random engine. | |
Sensor that produces "depth" images.
Definition at line 17 of file DepthCamera_WideAngleLens.h.
| ADepthCamera_WideAngleLens::ADepthCamera_WideAngleLens | ( | const FObjectInitializer & | ObjectInitializer | ) |
Definition at line 21 of file DepthCamera_WideAngleLens.cpp.
References AShaderBasedSensor_WideAngleLens::AddPostProcessingMaterial(), and CameraModelUtil::GetSampler().
|
inlineoverrideprotectedvirtual |
Pixels outside the lens' calibrated range decode to the far plane (all channels 255 -> 1000 m) rather than to zero depth.
Reimplemented from ASceneCaptureSensor_WideAngleLens.
Definition at line 33 of file DepthCamera_WideAngleLens.h.
|
static |
Definition at line 15 of file DepthCamera_WideAngleLens.cpp.
References UActorBlueprintFunctionLibrary::MakeWideAngleLensCameraDefinition().
|
overrideprotectedvirtual |
Reimplemented from ASceneCaptureSensor_WideAngleLens.
Definition at line 38 of file DepthCamera_WideAngleLens.cpp.
References ASensor::AreClientsListening(), ASceneCaptureSensor_WideAngleLens::CaptureAndSendToClient(), and PostPhysTick().
Referenced by PostPhysTick().