[darknet]查看错误结果 sight of wrong
import os
import numpy
import cv2 bad_label_file = open("bad_valid.list",'r') names = []
for line in open('data/coco.names','r'):
names.append(line.strip('\n'))
classes = len(names) colors = []
for i in range(80):
#color = [random.uniform(0, 255),random.uniform(0, 255),random.uniform(0, 255)]
color = [(i)*255/classes,(classes-i)*255/classes,(classes+i)*128/classes]
colors.append(color) lines = []
for line in bad_label_file:
lines.append(line) mount = len(lines) oper=0
i=0 #for i in range(mount):
while(i<mount):
i+=oper words = lines[i].split(':')
imagepath = words[0]
#print('reading "{}: No. {}"'.format(path,indexes))
print('{}\\{}'.format(mount,i)) src = cv2.imread(imagepath)
#cv2.imshow("src",src)
h,w = src.shape[:2] labelpath = imagepath.split('-')[0]+'-labels/'+os.path.basename(imagepath).split('.')[0]+'.txt'
try:
labelfile = open(labelpath,'r')
labels = []
for line in labelfile:
#print('get label {}'.format(line))
labels.append(line) for label in labels:
ti,tx,ty,tw,th = map(float,label.split(' ')[:5])
#print('get label {} {} {} {} {}'.format(ti,tx,ty,tw,th))
x0=w*(tx-tw/2)
y0=h*(ty-th/2)
x1=w*(tx+tw/2)
y1=h*(ty+th/2)
w0=w*tw
h0=h*th
ti,x0,y0,x1,y1,w0,h0 = map(int,[ti,x0,y0,x1,y1,w0,h0])
#print('<({},{}),({},{})>,'.format(x0,y0,x1,y1))
cv2.rectangle(src,(x0,y0),(x1,y1),colors[ti],2)
y0+=15
#cv2.putText(src,str(ti)+' '+names[ti],(x0+1,y0+1),cv2.FONT_HERSHEY_COMPLEX,0.5,colors[ti][::-1],1)
#cv2.putText(src,str(ti)+' '+names[ti],(x0-1,y0-1),cv2.FONT_HERSHEY_COMPLEX,0.5,colors[ti][::-1],1)
cv2.putText(src,str(ti)+' '+names[ti],(x0,y0),cv2.FONT_HERSHEY_COMPLEX,0.5,colors[ti],1)
except :
print('guess what? ERROR!(show_bad_valid.py::67)') words = words[1].strip('\n')
probs = words.split(' ')[2:]
#print(words)
#print(probs)
if len(probs) > 0:
for prob in probs:
values = prob.strip('<').strip('>').split(',')
print(values)
ti,tx,ty,tw,th = map(float,values[2:])
x0=w*(tx-tw/2)
y0=h*(ty-th/2)
x1=w*(tx+tw/2)
y1=h*(ty+th/2)
ti,x0,y0,x1,y1 = map(int,[ti,x0,y0,x1,y1])
y1-=10
cv2.rectangle(src,(x0,y0),(x1,y1),colors[ti][::-1],1)
cv2.putText(src,str(ti)+' '+names[ti],(x0,y1),cv2.FONT_HERSHEY_COMPLEX,0.5,colors[ti],1) cv2.imshow("image",src) key = cv2.waitKey(0)
'''
A 65
a 97
D 68
d 100
S 83
s 115
'''
if key == 97:
if i>0:
oper=-1
elif key == 100:
if i<len(lines):
oper=1
elif key == 115:
oper=0
cv2.imwrite('workingspace.jpg',src)
else:
break
bad_label_file.close()
[darknet]查看错误结果 sight of wrong的更多相关文章
- 启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错
本人还是个菜鸟,下面是我的经验之谈,能解决一些问题,有不对的地方,敬请斧正. 我的是CentOS6.3+MySQL5.1.57. 重启了一次服务器后,使用> mysql -u root -p登陆 ...
- IE调试网页之三:使用 F12 工具控制台查看错误和状态 (Windows)
IE调试网页之三:使用 F12 工具控制台查看错误和状态 (Windows) 等 请见博客园的 我的收藏
- mysql工具——perror(mysql错误代码,查看错误号释义)
mysql工具——perror(mysql查看错误代码,查看错误号释义) 关键词:mysql错误代码,mysql错误号,perror
- Dos窗口一闪而过,如何查看错误?
问:Dos窗口一闪而过,如何查看错误? 答:在执行程序最后追加pause或者read(,),即可查看错误信息.
- wampserver 运行橙色,80端口没有被占用,查看错误日志方法
wampserver运行时橙色,经检查80端口并没有被占用,试了很多种方法都无效,去查看错误日志吧 1.以管理员身份打开CMD 注意这里必须是管理员身份的CMD ,powershell不行的 进入wa ...
- sae上屏蔽错误显示并查看错误日志
首先应用上线之前肯定要屏蔽错误显示的, 登录sae,点进去你的应用, 关闭之后进入日志管理当前的当前版本 在http中可以查看各个级别的日志记录了
- JMeter采用NON GUI模式时如何记录并查看错误
在GUI模式下执行JMeter测试时,我们可以通过添加View Results Tree组件来查看JMeter请求的各类详情.那如果在正式测试场景中,当我们采用NON GUI模式时,遇到了断言或其他错 ...
- 在linux中怎么查看错误日志
cat或者tail -f命令 日 志 文 件 说 明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一/var/log/secure 与安全 ...
- 查看错误日志发现有两个警告(ignored in --skip-name-resolve mode)
2016-08-02 17:30:26 17374 [Warning] 'user' entry '@losnau-223.com' ignored in --skip-name-resolve mo ...
随机推荐
- ORACLE中dba,user,v$等开头的常用表和视图
一.Oracle表明细及说明1.dba_开头表 dba_users 数据库用户信息 dba_segments 表段信息 dba_extents ...
- 对于Dubbo的理解
最近才开始看关于Dubbo,曾经居然把Dubbo跟ActiveMQ联系到了一起,很显然 ,是没有深入理解Dubbo的本质. 其实Dubbo是项目与项目(或者是系统与系统)之间通信用的.在Dubbo没出 ...
- SSZipArchive解压乱码
https://www.twblogs.net/a/5b7e01e22b7177683854b7b8/zh-cn 搜索 CFStringConvertEncodingToNSStringEncod ...
- python panda::dataframe常用操作
1.条件查询: result = df.query("((a==1 and b=="x") or c/d < 3))" print result 2.遍历 ...
- LG3834 可持久化线段树1
题意 给定\(N\)个整数构成的序列,将对于指定的闭区间查询其区间内的第\(K\)小值. $n \leq 2 \times 10^5 $ 思路 在\([l,r]\)区间内的数的个数,可以用\(sum[ ...
- 最好还是用#pragma once
最好还是用#pragma once https://www.cnblogs.com/techdreaming/p/4921780.html
- 两种库解析、构造 JSON
1.用CJSON库 1.1解析Json 需要解析的JSON文件: { "name":"Tsybius", , "sex_is_male":t ...
- 关于mysql分组查询
在mysql查询中,用到GROUP BY 根据某一字段分组之后,每组显示的结果都只有第一条,这样的结果通常不是我们想要的. GROUP_CONCAT('字段') 可以将每一组下面的这个字段所有的数 ...
- 关于iframe的一些操作
用于自己学习,本身对于js的一些东西没有深入了解,也是用到再去查 1.如果现在在一个页面,想要获取这个页面中的iframe中嵌入的页面中的一个指定id的div var iframeObj = docu ...
- arm浮点运算
首先总结一下计算机中的浮点数的存储. 浮点数的标准是IEEE-754,规定了浮点数的存储都是通过科学计算法来存储的,n2-e的表示. 浮点数首先分为,定浮点(fixed-point)和浮点(float ...