feat(autoware_lidar_bevfusion): implementation of bevusion using tensorrt #10024
CodeScene PR Check
❌ Code Health Quality Gates: FAILED
Code Health of new files: 9.09
- Declining Code Health: 21 findings(s) 🚩
Details
🚩 Declining Code Health (highest to lowest):
- Complex Method get_indice_pairs_implicit_gemm_plugin_creator.cpp: GetIndicePairsImplicitGemmPluginCreator::createPlugin
- Bumpy Road Ahead get_indice_pairs_implicit_gemm_plugin_creator.cpp: GetIndicePairsImplicitGemmPluginCreator::createPlugin
- Large Method lidar_bevfusion_node.cpp: LidarBEVFusionNode::LidarBEVFusionNode
- Deep, Nested Complexity detection_class_remapper.cpp: DetectionClassRemapper::mapClasses
- Deep, Nested Complexity non_maximum_suppression.cpp: NonMaximumSuppression::generateIoUMatrix
- Deep, Nested Complexity get_indice_pairs_implicit_gemm_plugin_creator.cpp: GetIndicePairsImplicitGemmPluginCreator::createPlugin
- Large Method bevfusion_trt.cpp: BEVFusionTRT::initTrt
- Large Method get_indice_pairs_implicit_gemm_plugin.cpp: GetIndicePairsImplicitGemmPlugin::enqueue
- Complex Method precomputed_features.cpp: bev_pool_aux
- Complex Method implicit_gemm_plugin_creator.cpp: ImplicitGemmPluginCreator::createPlugin
- Complex Conditional lidar_bevfusion_node.cpp: LidarBEVFusionNode::cloudCallback
- Complex Method bevfusion_trt.cpp: BEVFusionTRT::preProcess
- Complex Method lidar_bevfusion_node.cpp: LidarBEVFusionNode::cloudCallback
- Large Method precomputed_features.cpp: get_geometry
- Excess Number of Function Arguments bevfusion_trt.cpp: BEVFusionTRT::detect
- Complex Conditional detection_class_remapper.cpp: DetectionClassRemapper::mapClasses
- Excess Number of Function Arguments precomputed_features.cpp: get_geometry
- Complex Conditional lidar_bevfusion_node.cpp: LidarBEVFusionNode::cameraInfoCallback
- Complex Method quick_cumsum_cuda_plugin.cpp: QuickCumsumCudaPlugin::supportsFormatCombination
- Complex Method quick_cumsum_cuda_plugin_creator.cpp: QuickCumsumCudaPluginCreator::createPlugin
- Bumpy Road Ahead non_maximum_suppression.cpp: NonMaximumSuppression::generateIoUMatrix
Annotations
Check warning on line 505 in perception/autoware_lidar_bevfusion/lib/bevfusion_trt.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Method
BEVFusionTRT::preProcess has a cyclomatic complexity of 9, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check warning on line 292 in perception/autoware_lidar_bevfusion/lib/bevfusion_trt.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Large Method
BEVFusionTRT::initTrt has 110 lines, threshold = 70. Large functions with many lines of code are generally harder to understand and lower the code health. Avoid adding more lines to this function.
Check warning on line 326 in perception/autoware_lidar_bevfusion/lib/bevfusion_trt.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Excess Number of Function Arguments
BEVFusionTRT::detect has 6 arguments, threshold = 4. This function has too many arguments, indicating a lack of encapsulation. Avoid adding more arguments.
Check warning on line 64 in perception/autoware_lidar_bevfusion/lib/detection_class_remapper.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Conditional
DetectionClassRemapper::mapClasses has 1 complex conditionals with 2 branches, threshold = 2. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.
Check warning on line 72 in perception/autoware_lidar_bevfusion/lib/detection_class_remapper.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Deep, Nested Complexity
DetectionClassRemapper::mapClasses has a nested complexity depth of 4, threshold = 4. This function contains deeply nested logic such as if statements and/or loops. The deeper the nesting, the lower the code health.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Bumpy Road Ahead
NonMaximumSuppression::generateIoUMatrix has 2 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is one single, nested block per function. The Bumpy Road code smell is a function that contains multiple chunks of nested conditional logic. The deeper the nesting and the more bumps, the lower the code health.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Deep, Nested Complexity
NonMaximumSuppression::generateIoUMatrix has a nested complexity depth of 4, threshold = 4. This function contains deeply nested logic such as if statements and/or loops. The deeper the nesting, the lower the code health.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Method
bev_pool_aux has a cyclomatic complexity of 13, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Large Method
get_geometry has 72 lines, threshold = 70. Large functions with many lines of code are generally harder to understand and lower the code health. Avoid adding more lines to this function.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Excess Number of Function Arguments
get_geometry has 6 arguments, threshold = 4. This function has too many arguments, indicating a lack of encapsulation. Avoid adding more arguments.
Check warning on line 285 in perception/autoware_lidar_bevfusion/src/lidar_bevfusion_node.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Method
LidarBEVFusionNode::cloudCallback has a cyclomatic complexity of 17, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
Check warning on line 201 in perception/autoware_lidar_bevfusion/src/lidar_bevfusion_node.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Conditional
LidarBEVFusionNode::cloudCallback has 1 complex conditionals with 3 branches, threshold = 2. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.
Check warning on line 311 in perception/autoware_lidar_bevfusion/src/lidar_bevfusion_node.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Conditional
LidarBEVFusionNode::cameraInfoCallback has 1 complex conditionals with 2 branches, threshold = 2. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.
Check warning on line 195 in perception/autoware_lidar_bevfusion/src/lidar_bevfusion_node.cpp
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Large Method
LidarBEVFusionNode::LidarBEVFusionNode has 132 lines, threshold = 70. Large functions with many lines of code are generally harder to understand and lower the code health. Avoid adding more lines to this function.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Large Method
GetIndicePairsImplicitGemmPlugin::enqueue has 88 lines, threshold = 70. Large functions with many lines of code are generally harder to understand and lower the code health. Avoid adding more lines to this function.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Method
GetIndicePairsImplicitGemmPluginCreator::createPlugin has a cyclomatic complexity of 42, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Bumpy Road Ahead
GetIndicePairsImplicitGemmPluginCreator::createPlugin has 13 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is one single, nested block per function. The Bumpy Road code smell is a function that contains multiple chunks of nested conditional logic. The deeper the nesting and the more bumps, the lower the code health.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Deep, Nested Complexity
GetIndicePairsImplicitGemmPluginCreator::createPlugin has a nested complexity depth of 4, threshold = 4. This function contains deeply nested logic such as if statements and/or loops. The deeper the nesting, the lower the code health.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Method
ImplicitGemmPluginCreator::createPlugin has a cyclomatic complexity of 13, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Method
QuickCumsumCudaPlugin::supportsFormatCombination has a cyclomatic complexity of 11, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)
❌ New issue: Complex Method
QuickCumsumCudaPluginCreator::createPlugin has a cyclomatic complexity of 11, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.