static void SetupCamera(LabelingConfiguration labelingConfiguration)
        {
            var cameraObject = new GameObject();

            cameraObject.SetActive(false);
            var camera = cameraObject.AddComponent <Camera>();

            camera.orthographic     = true;
            camera.orthographicSize = 1;
#if HDRP_PRESENT
            cameraObject.AddComponent <UnityEngine.Rendering.HighDefinition.HDAdditionalCameraData>();
#endif

            var perceptionCamera = cameraObject.AddComponent <PerceptionCamera>();
            perceptionCamera.LabelingConfiguration         = labelingConfiguration;
            perceptionCamera.captureRgbImages              = true;
            perceptionCamera.produceBoundingBoxAnnotations = true;
            perceptionCamera.produceObjectCountAnnotations = true;

            cameraObject.SetActive(true);
        }
        GameObject SetupCamera(LabelingConfiguration labelingConfiguration, Action <PerceptionCamera> initPerceptionCamera)
        {
            var cameraObject = new GameObject();

            cameraObject.SetActive(false);
            var camera = cameraObject.AddComponent <Camera>();

            camera.orthographic     = true;
            camera.orthographicSize = 1;

            var perceptionCamera = cameraObject.AddComponent <PerceptionCamera>();

            perceptionCamera.produceSegmentationImages       = false;
            perceptionCamera.produceRenderedObjectInfoMetric = false;
            perceptionCamera.produceBoundingBoxAnnotations   = false;
            perceptionCamera.produceObjectCountAnnotations   = false;
            perceptionCamera.captureRgbImages      = false;
            perceptionCamera.LabelingConfiguration = labelingConfiguration;
            initPerceptionCamera(perceptionCamera);

            cameraObject.SetActive(true);
            AddTestObjectForCleanup(cameraObject);
            return(cameraObject);
        }