This commit is contained in:
2026-08-28 17:04:23 +08:00
parent 9fe0fd6cfc
commit dc9abf07a5
119 changed files with 197 additions and 219 deletions
+9 -24
View File
@@ -59,7 +59,7 @@ async function loadAll() {
// ---------- 添加图片(AI 生成) ----------
const addVisible = ref(false)
const genForm = reactive({ species: '', count: 1, size: '704x1248', animalCount: 3, distanceMin: 20, distanceMax: 30 })
const genForm = reactive({ species: '', count: 1, size: '704x1248', distance: 25 })
const speciesOptions = ref([])
const generating = ref(false)
@@ -75,17 +75,11 @@ function openAdd() {
loadGenOptions()
genForm.count = 1
genForm.size = '704x1248'
genForm.animalCount = 3
genForm.distanceMin = 20
genForm.distanceMax = 30
genForm.distance = 25
addVisible.value = true
}
function submitGen() {
if (genForm.distanceMax < genForm.distanceMin) {
ElMessage.warning('距离范围上限不能小于下限')
return
}
generating.value = true
request
.post('/datasets/generate', {
@@ -93,12 +87,11 @@ function submitGen() {
species: genForm.species.trim(),
count: genForm.count,
size: genForm.size,
animalCount: genForm.animalCount,
distanceMin: genForm.distanceMin,
distanceMax: genForm.distanceMax,
distance: genForm.distance,
}, { timeout: 2400000 })
.then((data) => {
ElMessage.success(`已生成 ${data.generated || 0} 张(生成图片为付费资产,删除前请确认),自动标注处理中…`)
const rj = data.rejected ? `${data.rejected} 张不合格已跳过` : ''
ElMessage.success(`已生成 ${data.generated || 0}${rj}(生成图片为付费资产,删除前请确认),自动标注处理中…`)
addVisible.value = false
loadAll()
})
@@ -620,24 +613,16 @@ onBeforeUnmount(() => {
<el-form-item label="生成张数">
<el-input-number v-model="genForm.count" :min="1" :max="8" />
</el-form-item>
<el-form-item label="目标数量">
<el-form-item label="目标距离">
<div class="gen-inline">
<el-input-number v-model="genForm.animalCount" :min="1" :max="20" />
<span class="gen-note">画面中目标必须正好是该数量提示词中的数量写法应与此一致不符自动重新生成标注框数不超过该数量</span>
</div>
</el-form-item>
<el-form-item label="距离范围">
<div class="gen-inline">
<el-input-number v-model="genForm.distanceMin" :min="1" :max="500" />
<span class="gen-note"></span>
<el-input-number v-model="genForm.distanceMax" :min="1" :max="500" />
<span class="gen-note">逐张校验距离不合格自动重新生成</span>
<el-input-number v-model="genForm.distance" :min="1" :max="500" />
<span class="gen-note">注入提示词距离描述 25米外</span>
</div>
</el-form-item>
<el-form-item label="图片尺寸">
<span class="gen-size">竖版 704x1248</span>
</el-form-item>
<div class="gen-tip">生成图片为付费资产请勿随意删除提示词中不要描述目标在画面中的位置由模型自行构图</div>
<div class="gen-tip">生成图片为付费资产请勿随意删除手填提示词时无需写目标位置系统统一约束目标只出现在画面上部三分之一区域</div>
</el-form>
<template #footer>