finish inference result analysis

This commit is contained in:
hofee 2024-11-26 14:47:01 +08:00
parent dce8cdb2ff
commit ed980be104
3 changed files with 19 additions and 16 deletions

8
package-lock.json generated
View File

@ -4582,7 +4582,7 @@
},
"echarts": {
"version": "5.5.1",
"resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.5.1.tgz",
"resolved": "https://registry.npmjs.org/echarts/-/echarts-5.5.1.tgz",
"integrity": "sha512-Fce8upazaAXUVUVsjgV6mBnGuqgO+JNDlcgF79Dksy4+wgGpQB2lmYoO4TSweFg/mZITdpGHomw/cNBJZj1icA==",
"requires": {
"tslib": "2.3.0",
@ -4591,7 +4591,7 @@
"dependencies": {
"tslib": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
"integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
}
}
@ -17581,7 +17581,7 @@
},
"zrender": {
"version": "5.6.0",
"resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.6.0.tgz",
"resolved": "https://registry.npmjs.org/zrender/-/zrender-5.6.0.tgz",
"integrity": "sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==",
"requires": {
"tslib": "2.3.0"
@ -17589,7 +17589,7 @@
"dependencies": {
"tslib": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
"integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
}
}

View File

@ -37,8 +37,8 @@
<Option v-for="(value, key) in result" :value="key" :key="key" :label="key"><span>{{ key
}}</span>
<span style="float:right;color:#ccc">(SR=<span
:style="{ color: getSuccessRateColor(result[key]['success_rate']) }">{{
(result[key]["success_rate"] * 100).toFixed(2) }}%</span>)</span>
:style="{ color: getSuccessRateColor(result[key]['pred_max_coverage_rate']) }">{{
(result[key]["pred_max_coverage_rate"] * 100).toFixed(2) }}%</span>)</span>
</Option>
</Select>
</Col>
@ -49,8 +49,6 @@
</Col>
<Col span="14">
<span style="font-weight: bold;">Max Coverage Rate: <span style="color: green;">{{ result[sceneName]
? (result[sceneName]["max_coverage_rate"] * 100).toFixed(2) : 0 }}%</span></span>
<Divider type="vertical" style="height: 100%;" />
<span style="font-weight: bold;">Pred Coverage Rate: <span style="color: green;">{{
result[sceneName]
@ -119,7 +117,7 @@ export default {
if (!this.sceneName || !this.result[this.sceneName]) return;
const coverageRateSeq = this.result[this.sceneName]["coverage_rate_seq"];
const maxCoverageRate = this.result[this.sceneName]["max_coverage_rate"];
const maxCoverageRate = this.result[this.sceneName]["pred_max_coverage_rate"];
const successRateSeq = coverageRateSeq.map(rate => (rate * 100 / maxCoverageRate).toFixed(2)); //
// 线
@ -192,8 +190,9 @@ export default {
},
drawCharts() {
//
const successRates = Object.values(this.result).map(item => item.success_rate);
console.log("result", this.result);
const successRates = Object.values(this.result).map(item => item.pred_max_coverage_rate);
//
const avgSuccessRate = parseFloat((successRates.reduce((sum, rate) => sum + rate, 0) / successRates.length).toFixed(4));
console.log("avg", avgSuccessRate);
@ -204,13 +203,17 @@ export default {
const medianSuccessRate = parseFloat((sortedRates.length % 2 !== 0 ? sortedRates[mid] : ((sortedRates[mid - 1] + sortedRates[mid]) / 2)).toFixed(4));
//
const intervals = ['0-10%', '10-20%', '20-30%', '30-40%', '40-50%', '50-60%', '60-70%', '70-80%', '80-90%', '90-100%', '>=100%'];
const intervals = ['0-10%', '10-20%', '20-30%', '30-40%', '40-50%', '50-60%', '60-70%', '70-80%', '80-90%', '90-99%', '99-100%'];
const intervalCounts = new Array(intervals.length).fill(0);
//
successRates.forEach(rate => {
let index = Math.min(Math.floor(rate * 10), 10); // 100%
intervalCounts[index]++;
if (rate >= 0.99) {
intervalCounts[10]++; // 99-100%
} else {
let index = Math.floor(rate * 10);
intervalCounts[index]++;
}
});
//
@ -337,7 +340,7 @@ export default {
length: 30
},
label: {
formatter: '{a|{a}}{abg|}\n{hr|}\n {b|{b}}{c} {per|{d}%} ',
formatter: '{a|{a}}{abg|}\n{hr|}\n {b|{b}:}{c} {per|{d}%} ',
backgroundColor: '#F6F8FC',
borderColor: '#8C8D8E',
borderWidth: 1,

View File

@ -84,7 +84,7 @@
<Row v-for="(item, index) in seqFrameData" :key="item['frame']" style="margin-left: 20px;">
<p style="width: 10%;">[<span style="color: red;">{{ index }}</span>]</p>
<p style="width: 30%;">frame id: <span style="color: green;">{{ item['frame_id'] }}</span></p>
<p style="width: 40%;">coverage rate: <span style="color: blue;">{{ (item["data"]['coverage_rate']*100).toFixed(2) }}%</span></p>
<p style="width: 40%;">coverage rate: <span style="color: blue;">{{ (item["data"]['coverage_rate']).toFixed(2) }}%</span></p>
</Row>
</Card>
</Col>