cumulativeTruthMetrics

Кумулятивные метрики для последних истин

Описание

metricsTable = cumulativeTruthMetrics(errorMetrics) возвращает таблицу совокупных метрик, metricsTable, для каждого идентификатора истинности, представленного в последнем обновлении.

Примеры

свернуть все

Исследуйте назначения и ошибки для системы, отслеживающей две цели.

Во-первых, загрузите сохраненные данные дорожки.

load trackmetricex tracklog truthlog

Создайте объекты для анализа присвоения и метрики ошибок.

tam = trackAssignmentMetrics;
tem = trackErrorMetrics;

Создайте выходные переменные.

posRMSE = zeros(numel(tracklog),1);
velRMSE = zeros(numel(tracklog),1);
posANEES = zeros(numel(tracklog),1);
velANEES = zeros(numel(tracklog),1);

Цикл по всем трекам:

  • Извлеките треки и основную истину в i-м обновлении трекера.

  • Анализируйте и извлеките текущее назначение track-to-truth.

  • Анализируйте мгновенные метрики ошибок по всем трекам и истинам.

for i=1:numel(tracklog)
    tracks = tracklog{i};
    truths = truthlog{i};
    [trackAM,truthAM] = tam(tracks, truths);
    [trackIDs,truthIDs] = currentAssignment(tam);
    [posRMSE(i),velRMSE(i),posANEES(i),velANEES(i)] = ...
        tem(tracks,trackIDs,truths,truthIDs);
end

Отобразите таблицу метрики трека.

trackMetricsTable(tam)
ans=4×15 table
    TrackID    AssignedTruthID    Surviving    TotalLength    DeletionStatus    DeletionLength    DivergenceStatus    DivergenceCount    DivergenceLength    RedundancyStatus    RedundancyCount    RedundancyLength    FalseTrackStatus    FalseTrackLength    SwapCount
    _______    _______________    _________    ___________    ______________    ______________    ________________    _______________    ________________    ________________    _______________    ________________    ________________    ________________    _________

       1             NaN            false         1120            false               0                false                 3                   3                false                 0                   0                false                  0               0    
       2             NaN            false         1736            false               0                false                 8                  88                false                 0                   0                false                 28               3    
       6               3            true          1138            false               0                false                 4                 314                false                 1                  28                false                  0               2    
       8               2            true           662            false               0                false                 2                  29                false                 1                 169                false                 28               0    

Показать таблицу метрик истинности.

truthMetricsTable(tam)
ans=2×10 table
    TruthID    AssociatedTrackID    DeletionStatus    TotalLength    BreakStatus    BreakCount    BreakLength    InCoverageArea    EstablishmentStatus    EstablishmentLength
    _______    _________________    ______________    ___________    ___________    __________    ___________    ______________    ___________________    ___________________

       2               8                false            2678           false           4             168            true                 true                    56         
       3               6                false            2678           false           3             645            true                 true                    84         

Постройте график показателей ошибок RMSE и ANEES.

subplot(2,2,1)
plot(posRMSE)
title('Position Error')
xlabel('tracker update')
ylabel('RMSE (m)')

subplot(2,2,2)
plot(velRMSE)
title('Velocity Error')
xlabel('tracker update')
ylabel('RMSE (m/s)')

subplot(2,2,3)
plot(posANEES)
title('Position Error')
xlabel('tracker update')
ylabel('ANEES')

subplot(2,2,4)
plot(velANEES)
title('Velocity Error')
xlabel('tracker update')
ylabel('ANEES')

Figure contains 4 axes. Axes 1 with title Position Error contains an object of type line. Axes 2 with title Velocity Error contains an object of type line. Axes 3 with title Position Error contains an object of type line. Axes 4 with title Velocity Error contains an object of type line.

Показать текущие метрики ошибок для каждой отдельной записанной дорожки.

currentTrackMetrics(tem)
ans=2×5 table
    TrackID    posRMS    velRMS    posANEES    velANEES
    _______    ______    ______    ________    ________

       6       44.712    20.988    0.05974     0.31325 
       8       129.26    12.739     1.6745      0.2453 

Показать текущие метрики ошибок для каждого отдельного записанного объекта истинности.

currentTruthMetrics(tem)
ans=2×5 table
    TruthID    posRMS    velRMS    posANEES    velANEES
    _______    ______    ______    ________    ________

       2       129.26    12.739     1.6745      0.2453 
       3       44.712    20.988    0.05974     0.31325 

Показать совокупные метрики ошибок для каждой отдельной записанной дорожки.

cumulativeTrackMetrics(tem)
ans=4×5 table
    TrackID    posRMS    velRMS    posANEES    velANEES
    _______    ______    ______    ________    ________

       1       117.69    43.951    0.58338     0.44127 
       2        129.7      42.8    0.81094     0.42509 
       6       371.35    87.083     4.5208      1.6952 
       8       130.45    53.914     1.0448     0.44813 

Показать совокупные метрики ошибок для каждого отдельного записанного объекта истинности.

cumulativeTruthMetrics(tem)
ans=2×5 table
    TruthID    posRMS    velRMS    posANEES    velANEES
    _______    ______    ______    ________    ________

       2       258.21    65.078     2.2514     0.93359 
       3       134.41    48.253    0.96314     0.49183 

Входные параметры

свернуть все

Объект метрики ошибок, заданный как trackErrorMetrics Системные object™.

Выходные аргументы

свернуть все

Метрики истинной ошибки, возвращенные как таблица.

  • Когда вы устанавливаете ErrorFunctionFormat свойство объекта входных метрик ошибок в 'built-in'столбцы таблицы зависят от настройки MotionModel свойство.

    Модель движенияСтолбцы таблицы
    'constvel'posRMSE, velRMSE, posANEES, velANEES
    'constacc'posRMSE, velRMSE, accRMSE, posANEES, velANEES, accANEES
    'constturn'posRMSE, velRMSE, yawRateRMSE, posANEES, velANEES, yawRateANEES

    RMSE и ANEES обозначают среднюю квадратичную невязку корня и среднюю нормированную ошибку расчета в квадрате траектории истинности для всей истории времени сценария отслеживания. Поскольку траектория истинности может связываться с несколькими треками за один временной шаг, вычисление совокупных значений RMSE и ANEES разделяется на два шага. Для примера на первом шаге вычисления значения RMSE положения функция сначала вычисляет значение RMSE в установленный временной шаг t как:

    St=k=1KtΔpt,k2

    где K t - количество треков, сопоставленных с истиной на временной шаг t, и

    Δpt,k=ptrack,t,kptruth,t

    - различие позиций между положением k-й связанной дорожки и положением истины на временном шаге t. На втором этапе значения S t всех временных шагов (t = 1,2,..., N) суммируются и усредняются по общему числу связанных дорожек (обозначенных R), получая совокупное значение RMSE положения как:

    posRMSE=1t=1NKt t=1Nk=1KtΔpt,k2

    где общее количество связанных дорожек, R, задано как

    R=t=1NKt.

    Совокупные значения RMSE для других состояний (vel, pos, acc, и yawRate) заданы аналогично.

    Вычисление совокупного положения значения ANEES, posANEESдля траектории истинности можно также разделить на два шага. На первом этапе функция вычисляет значение ANEES в установленный временной шаг t как:

    Qt=k=1KtΔpt,kTCp,t,k1Δpt,k

    где C p, t, k является ковариацией, соответствующей положению k-й связанной дорожки на временном шаге t. На втором этапе значения Q t для всех временных шагов (t = 1,2,..., N) суммируются и усредняются по общему количеству связанных дорожек (обозначенных R), получая совокупное значение ANEES положения как:

    posANEES=1t=1NKtt=1Nk=1KtΔpt,kTCp,t,k1Δpt,k

    Совокупные значения ANEES для других состояний (vel, pos, acc, и yawRate) заданы аналогично.

  • Когда вы устанавливаете ErrorFunctionFormat свойство к 'custom'таблица содержит среднеарифметически усредненные значения пользовательских метрик, выводимых из функции error.

Введенный в R2018b