Occupancy Grid Map을 사용한 SSD detector

2 Ansichten (letzte 30 Tage)
JUWON SEO
JUWON SEO am 12 Jan. 2022
Beantwortet: Vinayak am 6 Feb. 2024
다음과 같이 LiDAR point cloud를 통해 500x500x3 rgb Occupancy grid map을 형성하여 Object(Vehicle) detection을 하려고 합니다.
아래의 코드를 사용하여 SSD Layer를 형성하고, SSD object Detector를 training 하였습니다.
imageInputSize = [500 500 3];
numClasses = 1;
lagraph = ssdLayers(imageInputSize, numClasses, 'resnet50');
options = trainingOptions('sgdm',...
'InitialLearnRate',18.0e-4,...
'LearnRateSchedule','piecewise', ...
'LearnRateDropFactor',0.7, ...
'LearnRateDropPeriod',1, ...
'Verbose',true,...
'MiniBatchSize',24,...
'MaxEpochs',8,...
'Shuffle','every-epoch',...
'VerboseFrequency',1);
[detector,info] = trainSSDObjectDetector(ds,lagraph,options);
하지만 미니 배치 손실에서 계속해서 NaN 값이 나오고, 중간에 멈추지 않고 끝까지 진행하더라도 계속 NaN 값이 나옵니다.
Ground Truth Labeling 예시는 아래와 같습니다.
혹시, Occupancy Grid Map으로 Object Detection을 하기 위해서는 Mathworks 예시에 나와있는 방법과는 다른 방법으로 해야하는 건가요?

Antworten (1)

Vinayak
Vinayak am 6 Feb. 2024
Hi JUWON SEO,
저는 한국어가 능숙하지 않아서 영어로 답변해드리겠습니다.
The NaN values in the mini-batch loss can occur for a variety of reasons. Getting rid of them may require some debugging in your SSD object detection. You may try these suggestions to troubleshoot and address the issue:
  1. Data Preprocessing: Ensure that your LiDAR point cloud data and ground truth labels are properly pre-processed before passing to the `trainSSDObjectDetector` function. Check for any missing or NaN values in the input data.
  2. Labeling and Ground Truth: Verify the correctness of your ground truth labels and ensure they align properly with the LiDAR point cloud data. The labeling process for LiDAR-based object detection may differ from traditional image-based labeling.
  3. Learning Rate and Training Options: Experiment with different learning rates and training options. NaN values in the loss could be related to inappropriate learning rates or other training parameters.
  4. NaN in Gradients: Monitor gradients during training. NaN values in gradients can sometimes lead to NaN in the loss. Check this by enabling gradient checking or printing gradient values during training.
You may refer to the following documentation for further reading:
I hope this helps!

Kategorien

Mehr zu Labeling, Segmentation, and Detection finden Sie in Help Center und File Exchange

Produkte


Version

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!