Show dataset YOLO training curves
This commit is contained in:
@@ -1289,6 +1289,8 @@ function DatasetQuality({ validation }: { validation: DatasetValidation }) {
|
||||
|
||||
function DatasetYoloOutputs({ dataset, outputs }: { dataset: UploadedDataset; outputs: DatasetYoloOutputsPayload }) {
|
||||
const previewItems = [...outputs.heatmaps.slice(0, 3), ...outputs.predictions.slice(0, 3)].slice(0, 6);
|
||||
const primaryCurve = outputs.curves[0];
|
||||
const curveSeries = primaryCurve?.series.slice(0, 4) ?? [];
|
||||
return (
|
||||
<div className="datasetOutputBox">
|
||||
<div className="qualityHead">
|
||||
@@ -1315,6 +1317,15 @@ function DatasetYoloOutputs({ dataset, outputs }: { dataset: UploadedDataset; ou
|
||||
</a>
|
||||
))}
|
||||
</div>
|
||||
{primaryCurve && !!curveSeries.length && (
|
||||
<div className="datasetOutputCurve">
|
||||
<div>
|
||||
<strong>{primaryCurve.name}</strong>
|
||||
<span>{primaryCurve.row_count} epochs · {primaryCurve.family}</span>
|
||||
</div>
|
||||
<MiniCurvePlot series={curveSeries} />
|
||||
</div>
|
||||
)}
|
||||
{!!previewItems.length && (
|
||||
<div className="datasetOutputPreview">
|
||||
{previewItems.map((item) => (
|
||||
|
||||
@@ -853,6 +853,48 @@ textarea {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.datasetOutputCurve {
|
||||
display: grid;
|
||||
gap: 8px;
|
||||
padding: 8px;
|
||||
border-radius: 6px;
|
||||
border: 1px solid var(--line);
|
||||
background: #101310;
|
||||
}
|
||||
|
||||
.datasetOutputCurve > div {
|
||||
min-width: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.datasetOutputCurve strong,
|
||||
.datasetOutputCurve span {
|
||||
min-width: 0;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.datasetOutputCurve strong {
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
.datasetOutputCurve span {
|
||||
flex: 0 1 auto;
|
||||
color: var(--muted);
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
.datasetOutputCurve .curveSvg,
|
||||
.datasetOutputCurve .curveEmpty {
|
||||
min-height: 96px;
|
||||
aspect-ratio: 2.6 / 1;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.datasetOutputPreview {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
|
||||
Reference in New Issue
Block a user