precisionRecall - Get precision recall metrics of object detection results - MATLAB (original) (raw)

Get precision recall metrics of object detection results

Since R2024b

Syntax

Description

[[precision](#mw%5F9602aef8-4222-4ccf-b33a-bdbce3818b38),[recall](#mw%5Ff5a59ece-7d9b-45d4-8421-2d3ff30f6582),[scores](#mw%5Fccd1c86c-a9e2-480f-910e-a9d9ec77b0df)] = precisionRecall([metrics](#mw%5Ff8531fcc-07d2-4507-baac-733d13be2e4f),[Name=Value](#namevaluepairarguments)) specifies precision and recall evaluation options using one or more name-value arguments. For example, ClassNames=["cars" "people"] specifies to get the precision recall metrics for the cars and people classes.

Examples

collapse all

Load a table containing image file names and ground truth bounding box labels into the workspace. The first column contains the image file names, and the remaining columns contain the labeled bounding boxes.

data = load("vehicleTrainingData.mat"); trainingData = data.vehicleTrainingData;

Set the value of the dataDir variable as the location where the vehicleTrainingData.mat file is located. Load the test data into a local vehicle data folder.

dataDir = fullfile(toolboxdir("vision"),"visiondata"); trainingData.imageFilename = fullfile(dataDir,trainingData.imageFilename);

Create an imageDatastore using the files from the table.

imds = imageDatastore(trainingData.imageFilename);

Create a boxLabelDatastore using the label column from the table.

blds = boxLabelDatastore(trainingData(:,2:end));

Load a pretrained YOLO v2 object detector, trained to detect vehicles, into the workspace.

vehicleDetector = load("yolov2VehicleDetector.mat"); detector = vehicleDetector.detector;

Plot Precision-Recall Curve

Run the detector on the test images. Set the detection threshold to a low value to detect as many objects as possible. This enables you to evaluate the detector precision across the full range of recall values.

results = detect(detector,imds,Threshold=0.01);

Compute metrics for evaluating the performance of the object detector.

metrics = evaluateObjectDetection(results,blds);

Get the precision, recall, and confidence scores for the vehicle class using the precisionRecall object function.

[precision,recall,scores] = precisionRecall(metrics);

Plot the precision-recall curve.

figure plot(recall{1},precision{1}) grid on title("Precision-Recall for Vehicle Class") xlabel("Precision") ylabel("Recall")

Figure contains an axes object. The axes object with title Precision-Recall for Vehicle Class, xlabel Precision, ylabel Recall contains an object of type line.

Display the confidence score thresholds corresponding to each point the precision-recall curve.

scores = 1×1 cell array {[1 0.9890 0.9825 0.9808 0.9804 0.9785 0.9776 0.9775 0.9763 0.9752 0.9744 0.9744 0.9726 0.9718 0.9718 0.9717 0.9716 0.9713 0.9705 0.9700 0.9698 0.9688 0.9681 0.9672 0.9665 0.9648 0.9644 0.9639 0.9621 0.9615 0.9612 0.9609 0.9592 0.9585 0.9584 0.9577 0.9571 0.9569 0.9561 0.9558 0.9540 0.9524 0.9516 0.9506 0.9498 0.9485 0.9485 0.9475 0.9464 0.9462 0.9462 0.9462 0.9459 0.9459 0.9458 0.9452 0.9416 0.9410 0.9403 0.9394 0.9384 0.9382 0.9375 0.9369 0.9367 0.9366 0.9360 0.9354 0.9353 0.9351 0.9345 0.9342 0.9339 0.9337 0.9332 0.9324 0.9290 0.9282 0.9276 0.9276 0.9266 0.9252 0.9252 0.9238 0.9237 0.9235 0.9222 0.9208 0.9205 0.9192 0.9182 0.9181 0.9179 0.9152 0.9149 0.9140 0.9134 0.9120 0.9115 0.9109 0.9106 0.9093 0.9092 0.9077 0.9070 0.9060 0.9052 0.9039 0.9039 0.9039 0.9039 0.9034 0.9034 0.9002 0.8999 0.8999 0.8984 0.8979 0.8965 0.8953 0.8946 0.8937 0.8933 0.8923 0.8921 0.8913 0.8896 0.8895 0.8890 0.8888 0.8880 0.8879 0.8872 0.8870 0.8869 0.8868 0.8868 0.8842 0.8837 0.8829 0.8829 0.8826 0.8824 0.8813 0.8812 0.8805 0.8788 0.8780 0.8764 0.8761 0.8758 0.8751 0.8741 0.8741 0.8733 0.8732 0.8730 0.8726 0.8726 0.8724 0.8713 0.8699 0.8682 0.8682 0.8633 0.8629 0.8601 0.8600 0.8600 0.8598 0.8597 0.8576 0.8576 0.8574 0.8568 0.8568 0.8557 0.8554 0.8549 0.8538 0.8535 0.8535 0.8525 0.8519 0.8519 0.8515 0.8515 0.8513 0.8510 0.8503 0.8491 0.8476 0.8470 0.8466 0.8462 0.8455 0.8455 0.8451 0.8421 0.8421 0.8413 0.8413 0.8382 0.8319 0.8319 0.8319 0.8294 0.8290 0.8278 0.8232 0.8181 0.8181 0.8155 0.8153 0.8128 0.8128 0.8098 0.8093 0.8093 0.8090 0.8090 0.8086 0.8056 0.8056 0.8017 0.7948 0.7948 0.7900 0.7900 0.7884 0.7875 0.7861 0.7825 0.7825 0.7821 0.7816 0.7806 0.7797 0.7793 0.7793 0.7791 0.7791 0.7763 0.7763 0.7726 0.7711 0.7710 0.7710 0.7676 0.7639 0.7548 0.7548 0.7541 0.7541 0.7489 0.7468 0.7468 0.7467 0.7467 0.7440 0.7430 0.7408 0.7408 0.7405 0.7401 0.7384 0.7365 0.7355 0.7355 0.7341 0.7341 0.7330 0.7330 0.7315 0.7302 0.7302 0.7270 0.7253 0.7235 0.7198 0.7172 0.7172 0.7171 0.7162 0.7162 0.7152 0.7129 0.7042 0.7038 0.7032 0.7032 0.6992 0.6933 0.6933 0.6892 0.6892 0.6879 0.6853 0.6838 0.6831 0.6829 0.6743 0.6743 0.6698 0.6698 0.6676 0.6643 0.6586 0.6567 0.6547 0.6516 0.6472 0.6472 0.6446 0.6446 0.6446 0.6446 0.6402 0.6381 0.6381 0.6373 0.6359 0.6359 0.6351 0.6351 0.6262 0.6191 0.6126 0.6068 0.5948 0.5694 0.5490 0.5490 0.5395 0.5383 0.5236 0.5236 0.5222 0.5078 0.4989 0.4989 0.4981 0.4944 0.4904 0.4904 0.4814 0.4814 0.4669 0.4620 0.4620 0.4514 0.4485 0.4440 0.4435 0.4417 0.4404 0.4404 0.4396 0.4333 0.4323 0.4316 0.4310 0.4310 0.4272 0.4272 0.4222 0.4222 0.4222 0.4194 0.4194 0.4182 0.4182 0.4174 0.4121 0.4048 0.4006 0.3999 0.3945 0.3945 0.3944 0.3944 0.3924 0.3901 0.3896 0.3885 0.3876 0.3837 0.3820 0.3797 0.3708 0.3679 0.3643 0.3620 0.3571 0.3457 0.3424 0.3421 0.3420 0.3367 0.3367 0.3363 0.3332 0.3332 0.3330 0.3330 0.3323 0.3315 0.3315 0.3298 0.3298 0.3298 0.3288 0.3286 0.3282 0.3241 0.3207 0.3207 0.3190 0.3175 0.3172 0.3169 0.3153 0.3153 0.3137 0.3115 0.3099 0.3099 0.3084 0.3084 0.3072 0.3060 0.3060 0.3060 0.3043 0.3043 0.3042 0.3035 0.3034 0.3031 0.3031 0.3030 0.3026 0.3018 0.3008 0.3003 0.2989 0.2989 0.2988 0.2987 0.2983 0.2946 0.2946 0.2926 0.2922 0.2912 0.2879 0.2862 0.2849 0.2844 0.2841 0.2841 0.2827 0.2815 0.2801 0.2789 0.2785 0.2785 0.2781 0.2773 0.2769 0.2768 0.2762 0.2762 0.2734 0.2723 0.2713 0.2699 0.2696 0.2696 0.2691 0.2691 0.2689 0.2687 0.2683 0.2683 0.2675 0.2675 0.2673 0.2673 0.2665 0.2660 0.2645 0.2634 0.2624 0.2607 0.2601 0.2586 0.2586 0.2572 0.2569 0.2569 0.2560 0.2558 0.2556 0.2556 0.2539 0.2533 0.2524 0.2524 0.2522 0.2522 0.2502 0.2494 0.2493 0.2487 0.2487 0.2469 0.2469 0.2469 0.2469 0.2465 0.2462 0.2461 0.2450 0.2449 0.2445 0.2441 0.2433 0.2423 0.2419 0.2407 0.2404 0.2404 0.2402 0.2401 0.2398 0.2398 0.2396 0.2391 0.2373 0.2373 0.2372 0.2370 0.2370 0.2369 0.2366 0.2366 0.2364 0.2364 0.2359 0.2353 0.2335 0.2330 0.2329 0.2329 0.2327 0.2327 0.2326 0.2320 0.2315 0.2314 0.2314 0.2314 0.2311 0.2308 0.2308 0.2308 0.2307 0.2307 0.2301 0.2301 0.2298 0.2293 0.2291 0.2290 0.2290 0.2282 0.2282 0.2276 0.2267 0.2267 0.2262 0.2262 0.2256 0.2250 0.2250 0.2248 0.2247 0.2242 0.2231 0.2231 0.2230 0.2224 0.2224 0.2213 0.2213 0.2211 0.2211 0.2190 0.2186 0.2186 0.2185 0.2185 0.2183 0.2183 0.2179 0.2177 0.2173 0.2172 0.2169 0.2168 0.2168 0.2166 0.2166 0.2155 0.2150 0.2150 0.2149 0.2135 0.2134 0.2133 0.2127 0.2123 0.2120 0.2118 0.2111 0.2111 0.2110 0.2102 0.2095 0.2081 0.2076 0.2075 0.2074 0.2063 0.2054 0.2054 0.2049 0.2046 0.2046 0.2025 0.2025 0.2023 0.2016 0.2012 0.2012 0.2008 0.2004 0.2003 0.2001 0.1996 0.1996 0.1994 0.1992 0.1992 0.1989 0.1989 0.1983 0.1981 0.1981 0.1970 0.1964 0.1952 0.1949 0.1947 0.1946 0.1945 0.1943 0.1942 0.1942 0.1937 0.1937 0.1934 0.1934 0.1934 0.1933 0.1932 0.1932 0.1929 0.1926 0.1926 0.1923 0.1923 0.1918 0.1910 0.1906 0.1906 0.1904 0.1896 0.1894 0.1892 0.1886 0.1886 0.1885 0.1882 0.1882 0.1877 0.1876 0.1874 0.1873 0.1868 0.1865 0.1863 0.1862 0.1862 0.1860 0.1859 0.1857 0.1855 0.1854 0.1854 0.1853 0.1836 0.1835 0.1834 0.1834 0.1828 0.1827 0.1826 0.1826 0.1824 0.1823 0.1822 0.1820 0.1819 0.1818 0.1816 0.1815 0.1812 0.1808 0.1808 0.1802 0.1794 0.1782 0.1780 0.1780 0.1780 0.1780 0.1778 0.1777 0.1776 0.1773 0.1768 0.1767 0.1766 0.1763 0.1760 0.1760 0.1759 0.1747 0.1747 0.1744 0.1741 0.1741 0.1741 0.1741 0.1739 0.1735 0.1735 0.1735 0.1734 0.1734 0.1734 0.1727 0.1727 0.1727 0.1727 0.1726 0.1726 0.1726 0.1724 0.1724 0.1723 0.1722 0.1722 0.1720 0.1720 0.1720 0.1712 0.1711 0.1708 0.1708 0.1707 0.1707 0.1705 0.1705 0.1703 0.1700 0.1700 0.1700 0.1693 0.1692 0.1690 0.1690 0.1689 0.1687 0.1687 0.1684 0.1683 0.1682 0.1679 0.1677 0.1674 0.1674 0.1673 0.1667 0.1667 0.1665 0.1663 0.1662 0.1662 0.1661 0.1661 0.1661 0.1657 0.1656 0.1656 0.1656 0.1655 0.1653 0.1650 0.1646 0.1643 0.1640 0.1639 0.1639 0.1639 0.1638 0.1638 0.1638 0.1638 0.1637 0.1636 0.1634 0.1634 0.1631 0.1630 0.1627 0.1627 0.1627 0.1627 0.1627 0.1625 0.1623 0.1623 0.1622 0.1622 0.1622 0.1621 0.1617 0.1615 0.1615 0.1615 0.1615 0.1613 0.1612 0.1612 0.1611 0.1611 0.1609 0.1609 0.1608 0.1607 0.1604 0.1601 0.1601 0.1601 0.1600 0.1599 0.1595 0.1595 0.1593 0.1586 0.1579 0.1576 0.1574 0.1574 0.1574 0.1572 0.1572 0.1572 0.1571 0.1571 0.1566 0.1566 0.1566 0.1566 0.1563 0.1563 0.1559 0.1559 0.1557 0.1554 0.1547 0.1547 0.1546 0.1546 0.1543 0.1543 0.1542 0.1539 0.1539 0.1537 0.1537 0.1536 0.1535 0.1533 0.1532 0.1530 0.1528 0.1526 0.1526 0.1526 0.1522 0.1521 0.1519 0.1518 0.1518 0.1517 0.1516 0.1516 0.1516 0.1515 0.1514 0.1514 0.1513 0.1513 0.1511 0.1511 0.1511 0.1510 0.1510 0.1509 0.1505 0.1502 0.1501 0.1496 0.1496 0.1495 0.1495 0.1494 0.1493 0.1493 0.1482 0.1481 0.1480 0.1480 0.1480 0.1477 0.1477 0.1475 0.1474 0.1474 0.1472 0.1472 0.1471 0.1471 0.1470 0.1468 0.1466 0.1461 0.1457 0.1457 0.1457 0.1455 0.1455 0.1452 0.1452 0.1451 0.1451 0.1450 0.1449 0.1449 0.1448 0.1448 0.1448 0.1446 0.1446 0.1446 0.1445 0.1443 0.1443 0.1443 0.1441 0.1439 0.1439 0.1438 0.1438 0.1437 0.1436 0.1435 0.1435 0.1434 0.1434 0.1433 0.1433 0.1432 0.1432 0.1432 0.1432 0.1431 0.1430 0.1429 0.1425 0.1423 0.1422 0.1422 0.1420 0.1419 0.1416 0.1413 0.1413 0.1413 0.1412 0.1412 0.1412 0.1412 0.1410 0.1410 0.1408 0.1408 0.1407 0.1405 0.1402 0.1402 0.1401 0.1401 0.1399 0.1399 0.1398 0.1396 0.1393 0.1393 0.1392 0.1391 0.1391 0.1391 0.1389 0.1388 0.1388 0.1386 0.1386 0.1385 0.1385 0.1384 0.1384 0.1384 0.1382 0.1381 0.1379 0.1379 0.1379 0.1375 0.1375 0.1375 0.1375 0.1374 0.1374 0.1374 0.1373 0.1368 0.1368 0.1368 0.1366 0.1365 0.1363 0.1363 0.1363 0.1361 0.1361 0.1360 0.1360 0.1360 0.1358 0.1358 0.1357 0.1354 0.1354 0.1354 0.1354 0.1354 0.1352 0.1352 0.1351 0.1350 0.1345 0.1343 0.1343 0.1339 0.1338 0.1337 0.1337 0.1336 0.1336 0.1336 0.1335 0.1335 0.1335 0.1334 0.1333 0.1332 0.1332 0.1331 0.1329 0.1328 0.1328 0.1328 0.1326 0.1323 0.1323 0.1322 0.1322 0.1322 0.1321 0.1321 0.1321 0.1321 0.1320 0.1319 0.1319 0.1319 0.1318 0.1317 0.1317 0.1314 0.1312 0.1311 0.1311 0.1310 0.1310 0.1310 0.1309 0.1308 0.1307 0.1303 0.1301 0.1300 0.1300 0.1299 0.1299 0.1299 0.1299 0.1299 0.1299 0.1299 0.1298 0.1298 0.1296 0.1296 0.1295 0.1294 0.1294 0.1293 0.1293 0.1293 0.1293 0.1288 0.1288 0.1288 0.1288 0.1287 0.1285 0.1285 0.1284 0.1283 0.1283 0.1282 0.1282 0.1279 0.1278 0.1278 0.1278 0.1278 0.1278 0.1278 0.1278 0.1278 0.1276 0.1275 0.1275 0.1274 0.1274 0.1274 0.1274 0.1271 0.1271 0.1270 0.1270 0.1269 0.1268 0.1268 0.1268 0.1267 0.1267 0.1266 0.1266 0.1266 0.1265 0.1264 0.1264 0.1263 0.1263 0.1263 0.1261 0.1261 0.1260 0.1257 0.1256 0.1255 0.1255 0.1254 0.1254 0.1253 0.1252 0.1249 0.1249 0.1248 0.1247 0.1247 0.1247 0.1247 0.1245 0.1243 0.1242 0.1242 0.1242 0.1242 0.1241 0.1241 0.1241 0.1241 0.1240 0.1240 0.1238 0.1237 0.1235 0.1235 0.1235 0.1235 0.1233 0.1233 0.1232 0.1232 0.1232 0.1230 0.1229 0.1229 0.1229 0.1228 0.1227 0.1227 0.1227 0.1224 0.1224 0.1224 0.1224 0.1224 0.1222 0.1221 0.1221 0.1221 0.1221 0.1221 0.1221 0.1218 0.1218 0.1218 0.1217 0.1215 0.1214 0.1213 0.1212 0.1209 0.1209 0.1209 0.1208 0.1208 0.1208 0.1208 0.1207 0.1205 0.1205 0.1204 0.1204 0.1203 0.1203 0.1203 0.1202 0.1201 0.1201 0.1201 0.1200 0.1199 0.1199 0.1198 0.1198 0.1198 0.1198 0.1198 0.1197 0.1197 0.1197 0.1197 0.1197 0.1196 0.1195 0.1194 0.1194 0.1194 0.1193 0.1192 0.1192 0.1191 0.1191 0.1191 0.1190 0.1190 0.1190 0.1190 0.1189 0.1188 0.1188 0.1187 0.1187 0.1186 0.1186 0.1185 0.1184 0.1183 0.1183 0.1181 0.1181 0.1181 0.1181 0.1181 0.1180 0.1180 0.1177 0.1176 0.1176 0.1175 0.1175 0.1174 0.1173 0.1172 0.1172 0.1171 0.1171 0.1171 0.1170 0.1169 0.1169 0.1169 0.1167 0.1165 0.1164 0.1164 0.1163 0.1163 0.1163 0.1163 0.1161 0.1160 0.1160 0.1160 0.1159 0.1159 0.1159 0.1159 0.1159 0.1159 0.1158 0.1157 0.1156 0.1156 0.1155 0.1155 0.1155 0.1155 0.1153 0.1153 0.1152 0.1152 0.1151 0.1151 0.1150 0.1150 0.1149 0.1148 0.1147 0.1147 0.1146 0.1146 0.1146 0.1146 0.1146 0.1146 0.1146 0.1142 0.1142 0.1142 0.1141 0.1139 0.1139 0.1139 0.1138 0.1137 0.1137 0.1137 0.1136 0.1136 0.1135 0.1135 0.1135 0.1134 0.1134 0.1134 0.1134 0.1133 0.1133 0.1133 0.1133 0.1133 0.1132 0.1131 0.1131 0.1131 0.1131 0.1130 0.1129 0.1129 0.1128 0.1127 0.1127 0.1127 0.1126 0.1126 0.1126 0.1126 0.1125 0.1125 0.1125 0.1124 0.1124 0.1124 0.1123 0.1122 0.1122 0.1121 0.1120 0.1120 0.1119 0.1119 0.1119 0.1119 0.1119 0.1119 0.1119 0.1118 0.1118 0.1118 0.1117 0.1117 0.1117 0.1116 0.1116 0.1116 0.1116 0.1116 0.1115 0.1115 0.1115 0.1115 0.1114 0.1113 0.1113 0.1113 0.1111 0.1111 0.1111 0.1111 0.1111 0.1110 0.1110 0.1109 0.1108 0.1107 0.1107 0.1107 0.1107 0.1107 0.1107 0.1106 0.1106 0.1106 0.1106 0.1105 0.1105 0.1105 0.1105 0.1105 0.1102 0.1101 0.1101 0.1101 0.1100 0.1099 0.1098 0.1098 0.1098 0.1098 0.1097 0.1097 0.1097 0.1097 0.1097 0.1097 0.1096 0.1096 0.1093 0.1092 0.1092 0.1091 0.1090 0.1089 0.1089 0.1089 0.1089 0.1089 0.1089 0.1088 0.1088 0.1088 0.1088 0.1088 0.1088 0.1087 0.1087 0.1087 0.1086 0.1086 0.1086 0.1086 0.1086 0.1085 0.1085 0.1084 0.1084 0.1084 0.1084 0.1083 0.1083 0.1083 0.1083 0.1082 0.1082 0.1082 0.1082 0.1082 0.1082 0.1082 0.1082 0.1081 0.1081 0.1081 0.1081 0.1079 0.1079 0.1079 0.1079 0.1079 0.1079 0.1078 0.1078 0.1078 0.1077 0.1077 0.1077 0.1076 0.1076 0.1075 0.1075 0.1072 0.1072 0.1071 0.1071 0.1071 0.1070 0.1070 0.1070 0.1069 0.1069 0.1069 0.1068 0.1068 0.1067 0.1066 0.1065 0.1065 0.1065 0.1064 0.1064 0.1063 0.1062 0.1062 0.1062 0.1060 0.1059 0.1059 0.1058 0.1058 0.1057 0.1057 0.1056 0.1055 0.1053 0.1053 0.1053 0.1052 0.1052 0.1052 0.1051 0.1051 0.1050 0.1050 0.1050 0.1049 0.1049 0.1049 0.1048 0.1048 0.1047 0.1046 0.1046 0.1045 0.1045 0.1044 0.1044 0.1044 0.1043 0.1042 0.1042 0.1041 0.1039 0.1039 0.1039 0.1038 0.1038 0.1038 0.1036 0.1036 0.1036 0.1035 0.1035 0.1034 0.1034 0.1032 0.1031 0.1030 0.1030 0.1030 0.1029 0.1029 0.1027 0.1027 0.1027 0.1026 0.1026 0.1026 0.1026 0.1026 0.1026 0.1025 0.1025 0.1024 0.1024 0.1024 0.1023 0.1023 0.1023 0.1023 0.1022 0.1022 0.1022 0.1022 0.1021 0.1021 0.1021 0.1021 0.1021 0.1020 0.1020 0.1019 0.1018 0.1018 0.1017 0.1017 0.1017 0.1015 0.1014 0.1014 0.1014 0.1014 0.1012 0.1012 0.1012 0.1011 0.1011 0.1011 0.1010 0.1010 0.1010 0.1010 0.1010 0.1009 0.1009 0.1009 0.1007 0.1006 0.1006 0.1006 0.1006 0.1006 0.1006 0.1005 0.1005 0.1005 0.1005 0.1005 0.1004 0.1004 0.1003 0.1003 0.1003 0.1002 0.1002 0.1002 0.1002 0.1002 0.1002 0.1002 0.1001 0.1001 0.1001 0.1001 0.1000 0.1000 0.1000 0.1000 0.1000 0.0998 0.0998 0.0998 0.0998 0.0997 0.0997 0.0997 0.0996 0.0995 0.0994 0.0994 0.0994 0.0994 0.0993 0.0993 0.0993 0.0993 0.0992 0.0992 0.0992 0.0991 0.0990 0.0990 0.0990 0.0989 0.0989 0.0988 0.0987 0.0987 0.0986 0.0986 0.0986 0.0986 0.0986 0.0986 0.0986 0.0986 0.0986 0.0986 0.0986 0.0985 0.0985 0.0985 0.0984 0.0984 0.0983 0.0982 0.0982 0.0982 0.0982 0.0981 0.0981 0.0981 0.0979 0.0979 0.0979 0.0978 0.0978 0.0976 0.0975 0.0975 0.0974 0.0974 0.0974 0.0974 0.0973 0.0973 0.0973 0.0973 0.0971 0.0971 0.0970 0.0970 0.0970 0.0970 0.0970 0.0970 0.0969 0.0969 0.0969 0.0969 0.0969 0.0969 0.0969 0.0968 0.0968 0.0967 0.0967 0.0966 0.0966 0.0966 0.0965 0.0965 0.0964 0.0964 0.0964 0.0963 0.0963 0.0963 0.0962 0.0962 0.0962 0.0962 0.0961 0.0961 0.0961 0.0961 0.0959 0.0959 0.0959 0.0959 0.0958 0.0958 0.0958 0.0958 0.0957 0.0957 0.0957 0.0957 0.0957 0.0957 0.0956 0.0956 0.0955 0.0955 0.0955 0.0955 0.0955 0.0954 0.0954 0.0954 0.0954 0.0954 0.0953 0.0953 0.0953 0.0952 0.0952 0.0952 0.0952 0.0952 0.0951 0.0951 0.0951 0.0951 0.0950 0.0950 0.0949 0.0949 0.0949 0.0948 0.0948 0.0948 0.0947 0.0946 0.0946 0.0945 0.0944 0.0944 0.0944 0.0944 0.0942 0.0942 0.0942 0.0941 0.0941 0.0941 0.0941 0.0940 0.0939 0.0939 0.0938 0.0938 0.0937 0.0937 0.0935 0.0935 0.0935 0.0934 0.0934 0.0934 0.0934 0.0934 0.0934 0.0934 0.0934 0.0934 0.0934 0.0933 0.0933 0.0933 0.0933 0.0933 0.0933 0.0933 0.0933 0.0933 0.0932 0.0932 0.0932 0.0931 0.0931 0.0931 0.0931 0.0931 0.0930 0.0930 0.0930 0.0930 0.0928 0.0928 0.0928 0.0928 0.0928 0.0928 0.0928 0.0928 0.0927 0.0926 0.0925 0.0925 0.0925 0.0924 0.0924 0.0923 0.0922 0.0922 0.0922 0.0922 0.0921 0.0921 0.0921 0.0921 0.0921 0.0921 0.0920 0.0919 0.0919 0.0919 0.0918 0.0918 0.0918 0.0918 0.0918 0.0918 0.0918 0.0917 0.0917 0.0917 0.0917 0.0917 0.0917 0.0915 0.0915 0.0915 0.0914 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0913 0.0912 0.0912 0.0912 0.0912 0.0912 0.0912 0.0912 0.0910 0.0910 0.0910 0.0910 0.0908 0.0908 0.0908 0.0907 0.0906 0.0905 0.0905 0.0905 0.0905 0.0903 0.0903 0.0903 0.0901 0.0901 0.0901 0.0901 0.0900 0.0900 0.0900 0.0900 0.0900 0.0899 0.0899 0.0899 0.0899 0.0898 0.0898 0.0898 0.0898 0.0897 0.0896 0.0896 0.0896 0.0896 0.0896 0.0896 0.0896 0.0895 0.0894 0.0894 0.0894 0.0894 0.0894 0.0893 0.0893 0.0893 0.0892 0.0892 0.0892 0.0892 0.0892 0.0891 0.0891 0.0891 0.0891 0.0890 0.0889 0.0889 0.0889 0.0889 0.0889 0.0888 0.0888 0.0888 0.0888 0.0887 0.0887 0.0887 0.0887 0.0886 0.0884 0.0884 0.0884 0.0884 0.0883 0.0882 0.0882 0.0882 0.0882 0.0882 0.0882 0.0881 0.0881 0.0881 0.0881 0.0881 0.0880 0.0880 0.0878 0.0878 0.0877 0.0877 0.0877 0.0876 0.0876 0.0876 0.0876 0.0876 0.0875 0.0875 0.0875 0.0874 0.0874 0.0874 0.0874 0.0874 0.0874 0.0873 0.0873 0.0873 0.0872 0.0872 0.0872 0.0872 0.0872 0.0871 0.0871 0.0871 0.0871 0.0871 0.0870 0.0870 0.0870 0.0870 0.0870 0.0870 0.0869 0.0868 0.0868 0.0868 0.0868 0.0868 0.0867 0.0867 0.0867 0.0867 0.0867 0.0867 0.0867 0.0867 0.0866 0.0865 0.0865 0.0865 0.0864 0.0864 0.0864 0.0864 0.0863 0.0863 0.0863 0.0862 0.0862 0.0862 0.0862 0.0862 0.0862 0.0860 0.0860 0.0860 0.0860 0.0859 0.0859 0.0859 0.0859 0.0858 0.0858 0.0858 0.0857 0.0857 0.0857 0.0856 0.0856 0.0856 0.0855 0.0855 0.0855 0.0855 0.0854 0.0854 0.0854 0.0854 0.0854 0.0854 0.0854 0.0853 0.0853 0.0853 0.0853 0.0853 0.0852 0.0852 0.0852 0.0852 0.0851 0.0851 0.0851 0.0851 0.0850 0.0850 0.0850 0.0850 0.0849 0.0849 0.0849 0.0848 0.0848 0.0848 0.0848 0.0848 0.0847 0.0847 0.0847 0.0846 0.0846 0.0846 0.0846 0.0845 0.0845 0.0844 0.0844 0.0844 0.0844 0.0844 0.0843 0.0843 0.0843 0.0843 0.0842 0.0842 0.0842 0.0842 0.0842 0.0841 0.0841 0.0841 0.0841 0.0841 0.0840 0.0840 0.0840 0.0840 0.0840 0.0839 0.0839 0.0839 0.0839 0.0839 0.0839 0.0838 0.0838 0.0838 0.0838 0.0837 0.0836 0.0836 0.0836 0.0836 0.0836 0.0836 0.0836 0.0835 0.0835 0.0835 0.0834 0.0833 0.0833 0.0833 0.0833 0.0832 0.0832 0.0832 0.0832 0.0832 0.0831 0.0831 0.0831 0.0831 0.0831 0.0831 0.0830 0.0830 0.0829 0.0829 0.0829 0.0829 0.0828 0.0828 0.0828 0.0828 0.0828 0.0828 0.0828 0.0827 0.0827 0.0827 0.0827 0.0826 0.0826 0.0826 0.0826 0.0826 0.0826 0.0825 0.0825 0.0825 0.0825 0.0825 0.0825 0.0825 0.0825 0.0823 0.0823 0.0823 0.0823 0.0823 0.0823 0.0823 0.0823 0.0823 0.0822 0.0822 0.0822 0.0821 0.0821 0.0821 0.0821 0.0821 0.0821 0.0820 0.0820 0.0820 0.0820 0.0820 0.0820 0.0819 0.0819 0.0819 0.0819 0.0819 0.0819 0.0819 0.0819 0.0818 0.0818 0.0818 0.0818 0.0817 0.0817 0.0817 0.0817 0.0816 0.0816 0.0816 0.0816 0.0816 0.0816 0.0815 0.0815 0.0815 0.0815 0.0815 0.0815 0.0815 0.0815 0.0815 0.0815 0.0815 0.0814 0.0814 0.0814 0.0814 0.0814 0.0813 0.0813 0.0812 0.0812 0.0812 0.0812 0.0811 0.0811 0.0811 0.0811 0.0811 0.0811 0.0811 0.0810 0.0810 0.0810 0.0810 0.0810 0.0809 0.0809 0.0809 0.0808 0.0808 0.0808 0.0808 0.0808 0.0808 0.0808 0.0808 0.0808 0.0808 0.0807 0.0807 0.0807 0.0807 0.0807 0.0806 0.0806 0.0806 0.0806 0.0805 0.0805 0.0805 0.0805 0.0805 0.0804 0.0804 0.0804 0.0804 0.0803 0.0803 0.0803 0.0803 0.0803 0.0803 0.0803 0.0803 0.0803 0.0803 0.0802 0.0802 0.0802 0.0802 0.0802 0.0802 0.0802 0.0801 0.0801 0.0801 0.0801 0.0801 0.0801 0.0801 0.0801 0.0801 0.0800 0.0800 0.0800 0.0800 0.0799 0.0799 0.0799 0.0799 0.0799 0.0798 0.0798 0.0798 0.0797 0.0797 0.0797 0.0797 0.0796 0.0796 0.0795 0.0795 0.0795 0.0795 0.0795 0.0795 0.0795 0.0795 0.0795 0.0795 0.0794 0.0794 0.0794 0.0793 0.0793 0.0793 0.0793 0.0793 0.0793 0.0791 0.0791 0.0791 0.0791 0.0791 0.0790 0.0790 0.0790 0.0789 0.0788 0.0788 0.0788 0.0788 0.0788 0.0788 0.0788 0.0788 0.0788 0.0788 0.0788 0.0787 0.0787 0.0786 0.0786 0.0786 0.0786 0.0786 0.0786 0.0785 0.0785 0.0785 0.0785 0.0784 0.0784 0.0783 0.0783 0.0783 0.0783 0.0783 0.0783 0.0783 0.0782 0.0782 0.0782 0.0782 0.0782 0.0782 0.0782 0.0782 0.0782 0.0782 0.0782 0.0782 0.0781 0.0781 0.0781 0.0781 0.0781 0.0780 0.0780 0.0780 0.0780 0.0780 0.0780 0.0779 0.0779 0.0779 0.0778 0.0778 0.0777 0.0777 0.0777 0.0777 0.0777 0.0777 0.0777 0.0777 0.0777 0.0776 0.0776 0.0776 0.0776 0.0775 0.0775 0.0775 0.0774 0.0774 0.0773 0.0773 0.0773 0.0773 0.0773 0.0772 0.0772 0.0772 0.0772 0.0771 0.0771 0.0771 0.0771 0.0771 0.0771 0.0771 0.0770 0.0770 0.0770 0.0770 0.0770 0.0769 0.0769 0.0769 0.0769 0.0768 0.0768 0.0768 0.0768 0.0768 0.0768 0.0768 0.0768 0.0767 0.0767 0.0767 0.0766 0.0766 0.0766 0.0766 0.0766 0.0765 0.0765 0.0765 0.0764 0.0764 0.0764 0.0764 0.0764 0.0764 0.0763 0.0763 0.0763 0.0763 0.0763 0.0763 0.0762 0.0762 0.0762 0.0762 0.0762 0.0762 0.0762 0.0762 0.0762 0.0761 0.0761 0.0761 0.0760 0.0760 0.0760 0.0760 0.0760 0.0760 0.0760 0.0759 0.0759 0.0759 0.0759 0.0759 0.0759 0.0759 0.0759 0.0759 0.0759 0.0759 0.0758 0.0758 0.0758 0.0758 0.0758 0.0758 0.0758 0.0758 0.0758 0.0758 0.0757 0.0757 0.0756 0.0756 0.0756 0.0756 0.0756 0.0756 0.0756 0.0756 0.0755 0.0755 0.0755 0.0755 0.0755 0.0755 0.0755 0.0755 0.0755 0.0755 0.0754 0.0754 0.0754 0.0754 0.0754 0.0754 0.0754 0.0753 0.0753 0.0753 0.0753 0.0753 0.0753 0.0753 0.0753 0.0753 0.0753 0.0753 0.0752 0.0752 0.0752 0.0752 0.0752 0.0752 0.0751 0.0751 0.0751 0.0751 0.0751 0.0751 0.0750 0.0750 0.0750 0.0750 0.0750 0.0748 0.0748 0.0748 0.0748 0.0748 0.0748 0.0747 0.0747 0.0747 0.0747 0.0747 0.0746 0.0746 0.0746 0.0745 0.0745 0.0745 0.0745 0.0745 0.0745 0.0745 0.0745 0.0745 0.0745 0.0745 0.0744 0.0744 0.0743 0.0743 0.0743 0.0743 0.0743 0.0743 0.0743 0.0743 0.0742 0.0742 0.0742 0.0742 0.0742 0.0742 0.0742 0.0742 0.0741 0.0740 0.0740 0.0740 0.0740 0.0739 0.0739 0.0739 0.0739 0.0739 0.0739 0.0739 0.0739 0.0739 0.0738 0.0738 0.0738 0.0737 0.0737 0.0737 0.0737 0.0737 0.0737 0.0737 0.0737 0.0737 0.0737 0.0736 0.0736 0.0736 0.0736 0.0736 0.0736 0.0736 0.0735 0.0735 0.0735 0.0735 0.0735 0.0735 0.0734 0.0734 0.0734 0.0734 0.0734 0.0734 0.0734 0.0734 0.0734 0.0733 0.0733 0.0733 0.0733 0.0733 0.0733 0.0733 0.0733 0.0732 0.0732 0.0732 0.0732 0.0732 0.0732 0.0731 0.0731 0.0731 0.0731 0.0731 0.0731 0.0730 0.0730 0.0730 0.0730 0.0730 0.0730 0.0730 0.0730 0.0730 0.0730 0.0729 0.0729 0.0729 0.0729 0.0729 0.0729 0.0728 0.0728 0.0727 0.0727 0.0727 0.0727 0.0726 0.0726 0.0726 0.0725 0.0725 0.0725 0.0724 0.0724 0.0724 0.0724 0.0723 0.0723 0.0723 0.0723 0.0723 0.0723 0.0722 0.0722 0.0722 0.0722 0.0722 0.0722 0.0722 0.0722 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0721 0.0720 0.0720 0.0720 0.0720 0.0720 0.0720 0.0720 0.0719 0.0719 0.0719 0.0719 0.0719 0.0719 0.0719 0.0719 0.0718 0.0718 0.0718 0.0718 0.0718 0.0718 0.0718 0.0717 0.0717 0.0717 0.0717 0.0717 0.0716 0.0716 0.0716 0.0715 0.0715 0.0715 0.0715 0.0715 0.0715 0.0715 0.0715 0.0714 0.0714 0.0714 0.0714 0.0713 0.0713 0.0713 0.0713 0.0713 0.0712 0.0712 0.0712 0.0712 0.0712 0.0711 0.0711 0.0711 0.0711 0.0711 0.0711 0.0711 0.0711 0.0711 0.0711 0.0711 0.0711 0.0710 0.0710 0.0710 0.0710 0.0710 0.0709 0.0709 0.0709 0.0709 0.0709 0.0709 0.0708 0.0708 0.0708 0.0708 0.0708 0.0708 0.0707 0.0707 0.0707 0.0707 0.0707 0.0707 0.0707 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0706 0.0705 0.0705 0.0705 0.0705 0.0705 0.0705 0.0704 0.0704 0.0704 0.0703 0.0703 0.0703 0.0703 0.0703 0.0703 0.0703 0.0703 0.0703 0.0702 0.0702 0.0702 0.0702 0.0702 0.0702 0.0702 0.0702 0.0702 0.0702 0.0702 0.0702 0.0701 0.0701 0.0701 0.0701 0.0701 0.0701 0.0701 0.0701 0.0701 0.0701 0.0700 0.0700 0.0700 0.0700 0.0699 0.0699 0.0699 0.0699 0.0699 0.0699 0.0699 0.0698 0.0698 0.0698 0.0698 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0697 0.0696 0.0696 0.0696 0.0696 0.0696 0.0696 0.0695 0.0695 0.0695 0.0695 0.0695 0.0695 0.0695 0.0695 0.0695 0.0695 0.0695 0.0695 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0694 0.0693 0.0693 0.0693 0.0693 0.0693 0.0693 0.0693 0.0692 0.0692 0.0692 0.0692 0.0692 0.0692 0.0692 0.0692 0.0691 0.0691 0.0691 0.0691 0.0691 0.0691 0.0691 0.0691 0.0691 0.0691 0.0690 0.0690 0.0690 0.0689 0.0689 0.0689 0.0689 0.0689 0.0689 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0688 0.0687 0.0687 0.0687 0.0687 0.0687 0.0687 0.0687 0.0687 0.0687 0.0687 0.0687 0.0686 0.0686 0.0686 0.0686 0.0686 0.0686 0.0686 0.0686 0.0686 0.0686 0.0686 0.0686 0.0685 0.0685 0.0685 0.0685 0.0685 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 0.0684 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0683 0.0682 0.0682 0.0682 0.0682 0.0682 0.0682 0.0682 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0681 0.0680 0.0680 0.0680 0.0680 0.0680 0.0680 0.0680 0.0679 0.0679 0.0679 0.0679 0.0678 0.0678 0.0678 0.0678 0.0678 0.0678 0.0678 0.0678 0.0678 0.0678 0.0678 0.0678 0.0677 0.0677 0.0677 0.0677 0.0677 0.0677 0.0677 0.0676 0.0676 0.0676 0.0676 0.0676 0.0676 0.0676 0.0676 0.0676 0.0676 0.0675 0.0675 0.0674 0.0674 0.0674 0.0674 0.0674 0.0674 0.0674 0.0674 0.0674 0.0673 0.0673 0.0673 0.0673 0.0673 0.0673 0.0673 0.0672 0.0672 0.0672 0.0672 0.0671 0.0671 0.0671 0.0671 0.0671 0.0670 0.0670 0.0670 0.0670 0.0670 0.0670 0.0670 0.0670 0.0670 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0669 0.0668 0.0668 0.0668 0.0668 0.0668 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0667 0.0666 0.0666 0.0666 0.0666 0.0666 0.0666 0.0665 0.0665 0.0665 0.0665 0.0665 0.0665 0.0665 0.0665 0.0665 0.0664 0.0664 0.0664 0.0664 0.0664 0.0664 0.0664 0.0664 0.0664 0.0663 0.0663 0.0663 0.0663 0.0663 0.0663 0.0663 0.0663 0.0663 0.0663 0.0663 0.0662 0.0662 0.0662 0.0662 0.0662 0.0662 0.0662 0.0662 0.0662 0.0662 0.0661 0.0661 0.0661 0.0661 0.0661 0.0661 0.0661 0.0661 0.0661 0.0661 0.0661 0.0661 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0660 0.0659 0.0659 0.0659 0.0659 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0658 0.0657 0.0657 0.0657 0.0657 0.0657 0.0657 0.0657 0.0657 0.0657 0.0657 0.0657 0.0656 0.0656 0.0656 0.0656 0.0656 0.0656 0.0656 0.0656 0.0656 0.0656 0.0656 0.0656 0.0655 0.0655 0.0655 0.0655 0.0655 0.0655 0.0655 0.0655 0.0655 0.0655 0.0654 0.0654 0.0654 0.0654 0.0654 0.0654 0.0654 0.0654 0.0654 0.0654 0.0653 0.0653 0.0653 0.0653 0.0652 0.0652 0.0652 0.0652 0.0652 0.0652 0.0652 0.0652 0.0652 0.0651 0.0651 0.0651 0.0651 0.0650 0.0650 0.0650 0.0650 0.0650 0.0650 0.0650 0.0650 0.0650 0.0650 0.0650 0.0650 0.0649 0.0649 0.0649 0.0649 0.0649 0.0649 0.0649 0.0649 0.0648 0.0647 0.0647 0.0647 0.0647 0.0647 0.0647 0.0647 0.0647 0.0647 0.0647 0.0647 0.0647 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0646 0.0645 0.0645 0.0645 0.0645 0.0645 0.0645 0.0645 0.0644 0.0644 0.0644 0.0644 0.0644 0.0644 0.0644 0.0644 0.0644 0.0644 0.0644 0.0643 0.0643 0.0643 0.0643 0.0643 0.0643 0.0643 0.0643 0.0643 0.0643 0.0643 0.0642 0.0642 0.0642 0.0642 0.0642 0.0642 0.0642 0.0642 0.0642 0.0642 0.0642 0.0642 0.0641 0.0641 0.0641 0.0641 0.0641 0.0641 0.0641 0.0641 0.0641 0.0641 0.0640 0.0640 0.0640 0.0640 0.0640 0.0640 0.0640 0.0640 0.0640 0.0640 0.0640 0.0640 0.0639 0.0639 0.0639 0.0639 0.0639 0.0639 0.0639 0.0639 0.0639 0.0638 0.0638 0.0638 0.0638 0.0638 0.0638 0.0637 0.0637 0.0637 0.0637 0.0637 0.0637 0.0637 0.0637 0.0637 0.0637 0.0637 0.0637 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0636 0.0635 0.0635 0.0635 0.0635 0.0634 0.0634 0.0634 0.0634 0.0634 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0633 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0632 0.0631 0.0631 0.0630 0.0630 0.0630 0.0630 0.0630 0.0630 0.0630 0.0630 0.0630 0.0630 0.0629 0.0629 0.0629 0.0629 0.0629 0.0628 0.0628 0.0628 0.0628 0.0628 0.0628 0.0628 0.0628 0.0628 0.0627 0.0627 0.0627 0.0627 0.0627 0.0627 0.0627 0.0627 0.0627 0.0627 0.0627 0.0626 0.0626 0.0626 0.0626 0.0626 0.0626 0.0626 0.0626 0.0626 0.0626 0.0625 0.0625 0.0625 0.0625 0.0625 0.0625 0.0625 0.0624 0.0624 0.0624 0.0624 0.0624 0.0624 0.0624 0.0624 0.0624 0.0624 0.0624 0.0624 0.0623 0.0623 0.0623 0.0623 0.0623 0.0623 0.0623 0.0623 0.0623 0.0623 0.0623 0.0622 0.0622 0.0622 0.0622 0.0622 0.0622 0.0622 0.0621 0.0621 0.0621 0.0621 0.0621 0.0621 0.0621 0.0621 0.0621 0.0620 0.0620 0.0620 0.0620 0.0620 0.0620 0.0620 0.0620 0.0620 0.0619 0.0619 0.0619 0.0619 0.0619 0.0619 0.0619 0.0619 0.0619 0.0618 0.0618 0.0618 0.0618 0.0618 0.0618 0.0618 0.0618 0.0618 0.0618 0.0618 0.0618 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0617 0.0616 0.0616 0.0616 0.0616 0.0616 0.0616 0.0616 0.0616 0.0616 0.0616 0.0616 0.0616 0.0615 0.0615 0.0615 0.0615 0.0615 0.0615 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0614 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0613 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0612 0.0611 0.0611 0.0611 0.0611 0.0611 0.0611 0.0611 0.0611 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0610 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0609 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0608 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0607 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0606 0.0605 0.0605 0.0605 0.0605 0.0605 0.0605 0.0605 0.0605 0.0605 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0604 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0603 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0602 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0601 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0600 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0599 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0598 0.0597 0.0597 0.0597 0.0597 0.0597 0.0597 0.0597 0.0597 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0596 0.0595 0.0595 0.0595 0.0595 0.0595 0.0595 0.0595 0.0595 0.0595 0.0595 0.0595 0.0595 0.0594 0.0594 0.0594 0.0594 0.0594 0.0594 0.0593 0.0593 0.0593 0.0593 0.0593 0.0593 0.0593 0.0592 0.0592 0.0592 0.0592 0.0592 0.0592 0.0592 0.0592 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0591 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0590 0.0589 0.0589 0.0589 0.0589 0.0589 0.0589 0.0589 0.0589 0.0589 0.0589 0.0589 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0588 0.0587 0.0587 0.0587 0.0587 0.0587 0.0587 0.0587 0.0587 0.0587 0.0587 0.0587 0.0587 0.0586 0.0586 0.0586 0.0586 0.0586 0.0586 0.0586 0.0586 0.0586 0.0586 0.0585 0.0585 0.0585 0.0585 0.0585 0.0585 0.0585 0.0585 0.0585 0.0585 0.0585 0.0585 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0584 0.0583 0.0583 0.0583 0.0583 0.0583 0.0583 0.0583 0.0583 0.0583 0.0583 0.0582 0.0582 0.0582 0.0582 0.0582 0.0582 0.0582 0.0582 0.0582 0.0582 0.0582 0.0582 0.0581 0.0581 0.0581 0.0581 0.0581 0.0581 0.0581 0.0581 0.0581 0.0580 0.0580 0.0580 0.0580 0.0580 0.0580 0.0580 0.0579 0.0579 0.0579 0.0579 0.0579 0.0579 0.0579 0.0579 0.0579 0.0579 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0578 0.0577 0.0577 0.0577 0.0577 0.0577 0.0577 0.0577 0.0577 0.0577 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0576 0.0575 0.0575 0.0575 0.0575 0.0575 0.0575 0.0575 0.0575 0.0575 0.0575 0.0574 0.0574 0.0574 0.0574 0.0574 0.0574 0.0574 0.0574 0.0573 0.0573 0.0573 0.0573 0.0573 0.0573 0.0573 0.0573 0.0573 0.0573 0.0573 0.0573 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0572 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0571 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0570 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0569 0.0568 0.0568 0.0568 0.0568 0.0568 0.0568 0.0568 0.0568 0.0568 0.0568 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0567 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0566 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0565 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0564 0.0563 0.0563 0.0563 0.0563 0.0563 0.0563 0.0563 0.0563 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0562 0.0561 0.0561 0.0561 0.0561 0.0561 0.0561 0.0561 0.0560 0.0560 0.0560 0.0560 0.0560 0.0560 0.0560 0.0560 0.0560 0.0560 0.0560 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0559 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0558 0.0557 0.0557 0.0557 0.0557 0.0557 0.0557 0.0557 0.0557 0.0557 0.0557 0.0557 0.0557 0.0556 0.0556 0.0556 0.0556 0.0556 0.0556 0.0556 0.0556 0.0556 0.0556 0.0556 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0555 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0554 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0553 0.0552 0.0552 0.0552 0.0552 0.0552 0.0552 0.0552 0.0552 0.0552 0.0552 0.0551 0.0551 0.0551 0.0551 0.0551 0.0551 0.0551 0.0551 0.0551 0.0551 0.0551 0.0551 … ] (1×37640 single)}

Input Arguments

Name-Value Arguments

collapse all

Specify optional pairs of arguments asName1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Example: [precision,recall,scores]=precisionRecall(metrics,ClassNames=[cars people]) specifies the precision recall metric to be evaluated for the cars and people classes.

Class names of detected objects, specified as an array of strings or a cell array of character vectors. By default, theprecisionRecall function returns the precision recall metrics for all classes specified by the [ClassNames](objectdetectionmetrics.html#b) property of the objectDetectionMetrics objectmetrics.

Output Arguments

collapse all

Precision, returned as an M_-by-N cell array. M is the number of classes in the ClassNames property, and_N is the number of overlap thresholds in theOverlapThreshold property of the objectDetectionMetrics object metrics. Each element of the cell array contains a (numPredictions+1)-element numeric vector of precision values for the bounding boxes, sorted in descending order of bounding box confidence scores. numPredictions is the number of predicted bounding boxes.

Precision is the ratio of the number of true positives (TP) and the total number of predicted positives​. Larger precision scores indicate that more detected objects match ground truth objects. To learn more about the precision metric, see Compute Precision and Recall.

Recall, returned as an _M_-by-N cell array. M is the number of classes in theClassNames property, and N is the number of overlap thresholds in the OverlapThreshold property of the objectDetectionMetrics object metrics. Each element of the cell array contains a (numPredictions+1)-element numeric vector of recall values, sorted in descending order of bounding box confidence scores.numPredictions is the number of predicted bounding boxes.

Recall is the ratio of the number of true positives (TP) and the total number of ground truth​. Larger recall scores indicate that more detected objects match ground truth objects. To learn more about the recall metric, see Compute Precision and Recall.

Confidence score for each detection, returned as an_M_-by-1 cell array. M is the number of classes in the ClassNames property. Each element of the array is a (numPredictions+1)-element numeric vector.numPredictions is the number of predicted objects.

More About

collapse all

To evaluate how precisely a detector can localize bounding boxes, plot the precision recall curve for a range of overlap thresholds.

At higher overlap thresholds, the criteria for how well the bounding boxes of the detection and ground truth must overlap to be a true positive (TP) are stricter. Therefore, average precision is lower at higher overlap thresholds, which corresponds to a decrease in the area under the precision-recall curve, which plots the recall against precision. Plotting the precision-recall curves across different overlap thresholds can help you evaluate the detector in these ways.

Algorithms

collapse all

Precision recall is a powerful tool you can use to evaluate object detector performance. The precisionRecall function computes the precision and recall in these steps.

  1. Sorts the detections which satisfy the criteria specified by the[ClassNames](objectdetectionmetrics.precisionrecall.html#mw%5Fd8b5944a-acaa-4ae1-a647-b1202557d7bf) and [OverlapThresholds](objectdetectionmetrics.precisionrecall.html#mw%5Fd880a0b3-5ed6-42cd-ae3a-71da2d6a7e9e) name-value arguments in descending order based on their confidence scores. Higher confidence scores indicate that the model is more certain that the detection is correct.
  2. Identifies true positives (TP) and false positives (FP) according to the specified overlap threshold criteria. A detection is considered a TP if its IoU is greater to or equal to the specified overlap threshold. A detection is considered an FP if it does not match any ground truth object or if it matches a ground truth object but the IoU is below the specified overlap threshold.
  3. Starting with the detection with the highest confidence score, theprecisionRecall function iterates through each detection and calculates the cumulative number of TPs and FPs at each step. This step-by-step process enables the calculation of precision and recall at every confidence level. At each score, the function calculates the precision and recall.
    Precision measures the accuracy of positive predictions, i.e., the proportion of detections that are correctly identified from all detections made.
    Precision = TP / (TP +FP)
    Recall measures the ability of the detector to detect all object instances, i.e. the proportion of actual positives that are correctly identified. False negatives (FNs) are ground truth objects that haven't been detected or have been detected with a confidence score below the current threshold being considered.
    Recall = TP / (TP +FN)
  4. For each detection, the set of TPs, FPs, and FNs changes, which enables you to recalculate precision and recall at each confidence level.

To visualize the tradeoff between precision and recall for different confidence thresholds, plot the calculated precision and recall values. For an example, seePlot Precision-Recall Curve.

Version History

Introduced in R2024b