This commit is contained in:
王庆刚
2024-11-08 08:52:56 +08:00
parent 5ecc1285d4
commit c47894ddc0
11 changed files with 562 additions and 644 deletions

View File

@ -144,15 +144,124 @@
precision_compare(filepath, savepath)
读取 deletedBarcode.txt 和 deletedBarcodeTest.txt 中的数据,进行相似度比较
genfeats.py
get_std_barcodeDict(bcdpath, savepath)
功能: 生成并保存只有一个key值的字典 {barcode: [imgpath1, imgpath1, ...]}
stdfeat_infer(imgPath, featPath, bcdSet=None)
功能: 对 imgPath 中图像进行特征提取生成只有一个key值的字典。
{barcode: features}features.shape=(nsample, 256),并保存至 featPath 中
one2n_contrast.py
1:n 比对,读取 deletedBarcode.txt实现现场测试评估。
main():
循环读取不同文件夹中的 deletedBarcode.txt,合并评估。
main1():
指定deletedBarcode.txt进行1:n性能评估
test_one2n()
1:n 现场测试性能评估,输出 PR 曲线
兼容 2 种 txt 文件格式returnGoods.txt, deletedBarcode.txt,
分别对应不同的文件读取函数:
- read_deletedBarcode_file()
- read_returnGoods_file()
one2n_return(all_list)
输入从returnGoods.txt读取的数据
输出:
corrpairs(取出事件, 正确匹配的放入事件)
errpairs(取出事件, 放入事件, 错误匹配的放入事件)
corr_similarity: (正确匹配时的相似度)
err_similarity: (错误匹配时的相似度)
one2n_deleted(all_list)
输入: 从deletedBarcode.txt读取的数据
输出:
corrpairs(取出事件, 取出的barcode)
errpairs(取出事件, 取出的barcode, 错误匹配的barcode)
corr_similarity: (正确匹配时的相似度)
err_similarity: (错误匹配时的相似度)
save_tracking_imgpairs(pairs, savepath)
输入:
pairs匹配时间对len(2)=2 or 3, 对应正确匹配与错误匹配
savepath结果保存地址其中图像文件的命名为取出事件 + 放入事件 + 错误匹配时间
子函数 get_event_path(), 扫码放入的对齐名
对于 returnGoods.txt, 放入事件的事件名和对应的文件夹名不一致,需要对齐
test_rpath_deleted()
功能:
针对 eletedBarcode.txt 格式的 1:n 数据结果文件
获得 1:n 情况下正确或匹配事件对(取出事件、放入事件、错误匹配事件)
匹配事件分析, 实现函数save_tracking_imgpairs()
重要参数:
del_barcode_file:
basepath: 对应事件路径
savepath: 存储路径, 是函数 save_tracking_imgpairs() 的输入
saveimgs: Ture, False, 是否保存错误匹配的事件对
get_contrast_paths()
针对 eletedBarcode.txt 格式的 1:n 数据结果文件,返回三元时间元组getoutpath, inputpath, errorpath
test_rpath_return()
针对 returnGoods.txt 格式 1:n 数据文件不需要调用函数get_contrast_paths()
获得 1:n 情况下正确或匹配事件对(取出事件、放入事件、错误匹配事件)
匹配事件分析, 实现函数save_tracking_imgpairs()
one2one_contrast.py
共6个地址
(1) stdSamplePath: 用于生成比对标准特征集的原始图像地址
(2) stdBarcodePath: 比对标准特征集原始图像地址的pickle文件存储{barcode: [imgpath1, imgpath1, ...]}
(3) stdFeaturePath: 比对标准特征集特征存储地址
(4) eventFeatPath: 用于1:1比对的购物事件特征存储地址、对应子图存储地址
(5) subimgPath: 1:1比对购物事件轨迹、标准barcode所对应的 subimgs 存储地址
(6) resultPath: 1:1比对结果存储地址
(1), (2), (3): 保存标准特征集向量,只需运行一次
(4): 保存测试的事件字典,只需运行一次
test_one2one()
(1) 生成标准特征集, 只需运行一次
genfeatures()
(2) 生成事件字典, 只需运行一次
gen_eventdict(eventDatePath, saveimg)
参数:
eventDatePath: 事件集列表,其中每个元素均为事件的集合;
saveimg: 是否保存事件子图
(3) 1:1性能评估
(4) 计算PR曲线
creat_shopping_event(eventPath, subimgPath=False)
构造一次购物事件字典, 共12个关键字。
save_event_subimg(event, savepath)
保存一次购物事件的子图
one2one_eval()
compute_precise_recall()
int8_to_ft16()
ft16_to_uint8()
one2one_onsite.py
现场试验输出数据的 1:1 性能评估;
适用于202410前数据保存版本的需调用 OneToOneCompare.txt
@ -161,11 +270,13 @@
std_sample_path图像样本的存储地址
std_barcode_path对 std_sample_path 中文件列表进行遍历,形成{barcode: 图像样本地址}形式字典并进行存储
std_feature_path调用 inference_image(), 对每一个barcode生成字典并进行存储
genfeats.py
genfeatures(imgpath, bcdpath, featpath)
功能:生成标准特征向量
功能:生成标准特征向量的字典, 并保存为: barcode.pickle
keys: barcode, imgpaths, feats_ft32, feats_ft16, feats_uint8
参数:
(1) imgpath图像样本的存储地址
(2) bcdpath对 imgpath 中文件列表进行遍历,形成{barcode: 图像样本地址}形式字典并进行存储