当前位置: 首页 > news >正文

运城做网站西安网站推广排名

运城做网站,西安网站推广排名,做的好的手机网站,手机网页前端开发同济子豪兄模板 半天搞定图像分类 ‘’import cv2 import numpy as np import time from tqdm import tqdm 视频逐帧处理代码模板 不需修改任何代码,只需定义process_frame函数即可 def generate_video(input_path‘videos/robot.mp4’): filehead input_path.…

同济子豪兄模板 半天搞定图像分类

‘’'import cv2
import numpy as np
import time
from tqdm import tqdm

视频逐帧处理代码模板

不需修改任何代码,只需定义process_frame函数即可

def generate_video(input_path=‘videos/robot.mp4’):
filehead = input_path.split(‘/’)[-1]
output_path = “out-” + filehead

print('视频开始处理',input_path)# 获取视频总帧数
cap = cv2.VideoCapture(input_path)
frame_count = 0
while(cap.isOpened()):success, frame = cap.read()frame_count += 1if not success:break
cap.release()
print('视频总帧数为',frame_count)# cv2.namedWindow('Crack Detection and Measurement Video Processing')
cap = cv2.VideoCapture(input_path)
frame_size = (cap.get(cv2.CAP_PROP_FRAME_WIDTH), cap.get(cv2.CAP_PROP_FRAME_HEIGHT))# fourcc = int(cap.get(cv2.CAP_PROP_FOURCC))
# fourcc = cv2.VideoWriter_fourcc(*'XVID')
fourcc = cv2.VideoWriter_fourcc(*'mp4v')
fps = cap.get(cv2.CAP_PROP_FPS)out = cv2.VideoWriter(output_path, fourcc, fps, (int(frame_size[0]), int(frame_size[1])))# 进度条绑定视频总帧数
with tqdm(total=frame_count-1) as pbar:try:while(cap.isOpened()):success, frame = cap.read()if not success:break# 处理帧# frame_path = './temp_frame.png'# cv2.imwrite(frame_path, frame)try:frame = process_frame(frame)except:print('报错!', error)passif success == True:# cv2.imshow('Video Processing', frame)out.write(frame)# 进度条更新一帧pbar.update(1)# if cv2.waitKey(1) & 0xFF == ord('q'):# breakexcept:print('中途中断')passcv2.destroyAllWindows()
out.release()
cap.release()
print('视频已保存', output_path)

处理帧函数

def process_frame(img_bgr):

'''
输入摄像头拍摄画面bgr-array,输出图像分类预测结果bgr-array
'''# 记录该帧开始处理的时间
start_time = time.time()## 画面转成 RGB 的 Pillow 格式
img_rgb = cv2.cvtColor(img_bgr, cv2.COLOR_BGR2RGB) # BGR转RGB
img_pil = Image.fromarray(img_rgb) # array 转 PIL## 预处理
input_img = test_transform(img_pil) # 预处理
input_tensor = input_img.unsqueeze(0).numpy()## onnx runtime 预测
ort_inputs = {'input': input_tensor} # onnx runtime 输入
pred_logits = ort_session.run(['output'], ort_inputs)[0] # onnx runtime 输出
pred_logits = torch.tensor(pred_logits)
pred_softmax = F.softmax(pred_logits, dim=1) # 对 logit 分数做 softmax 运算## 解析top-n预测结果的类别和置信度
top_n = torch.topk(pred_softmax, 3) # 取置信度最大的 n 个结果
pred_ids = top_n[1].cpu().detach().numpy().squeeze() # 解析预测类别
confs = top_n[0].cpu().detach().numpy().squeeze() # 解析置信度# 在图像上写英文
for i in range(len(confs)):pred_class = idx_to_labels[pred_ids[i]]# 写字:图片,添加的文字,左上角坐标,字体,字体大小,颜色,线宽,线型text = '{:<12} {:>.2f}'.format(pred_class, confs[i])img_bgr = cv2.putText(img_bgr, text, (50, 160 + 40 * i), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2, cv2.LINE_AA)# 记录该帧处理完毕的时间
end_time = time.time()
# 计算每秒处理图像帧数FPS
FPS = 1/(end_time - start_time)  
# 图片,添加的文字,左上角坐标,字体,字体大小,颜色,线宽,线型
img_bgr = cv2.putText(img_bgr, 'FPS  '+str(int(FPS)), (50, 80), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 0, 0), 2, cv2.LINE_AA)return img_bgr

while True:
img_bgr = cap.read()

if img_bgr is None:continueimg_bgr = process_frame(img_bgr)cvs.imshow(img_bgr)

‘’’

demo见B站分享: Aidlux两天搞定图像分类,半天就可以 |【aidlux实现图像分类~还是蛮好用的,可以推荐-哔哩哔哩】 https://b23.tv/codx3GL

http://www.ds6.com.cn/news/15521.html

相关文章:

  • wordpress w3 total cache 编码错误立即优化在哪里
  • 网站怎么添加模块重庆seo网站建设
  • 网站设计评价by网站域名
  • 唐山高端网站建设泰安网站推广优化
  • 阳泉住房与城乡建设厅网站搜索引擎排名营销
  • 公司建设网站的请示百度最怕哪个部门去投诉
  • 可以做ppt的网站有哪些深圳seo云哥
  • 增城网站建设怎么选择长沙百度推广优化排名
  • 哈尔滨网站建设工作今天的新闻 最新消息摘抄
  • 做艺术教育类网站如何申请百度刷排名seo
  • 沈阳市城乡建设网站自己建网站
  • dw怎么做网站轮播图深圳推广公司有哪些
  • 做网站怎么导入源码宁波seo关键词培训
  • wordpress 关键词优化廊坊关键词优化平台
  • 用php做的企业网站作业最新国内新闻事件今天
  • 做公司网站费用免费网站模板库
  • 网站怎么做网上报名今日国际新闻头条15条简短
  • 龙华做网站多少钱网络营销推广服务商
  • 网站开发属于哪个部门淘宝直通车
  • 怎么做切片网站百度手机助手下载苹果版
  • 设计师网站十大网站排名周口seo公司
  • 网投怎么做网站东莞网站推广软件
  • 百度做公司网站多少钱日本shopify独立站
  • 做网站网站名字自己设置吗公众号排名优化
  • 成都网站建设模板制作seo网站平台
  • 深圳办公室设计公司排名长沙网站seo源头厂家
  • 做网站的开题报告怎么写美国最新消息今天 新闻
  • 做家装的网站谷歌seo和百度seo区别
  • thinkphp网站建设课程搜索引擎优化的核心本质
  • 新手如何做海外网站代购百度手机助手下载2022新版