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

一家专门做特卖的网站是什么seo搜狗排名点击

一家专门做特卖的网站是什么,seo搜狗排名点击,网站制作样板,网页制作软件dreamweaver是哪个公司的产品?具体步骤如下: 加载图像: 从指定路径读取一张图像(这里假设图像名为bus.jpg)。将图像从 BGR 颜色空间转换为 RGB 颜色空间。 图像预处理: 计算图像的高度、宽度,并确定其中的最大值作为新图像的边长。创建一…

具体步骤如下:

  1. 加载图像:

    • 从指定路径读取一张图像(这里假设图像名为bus.jpg)。
    • 将图像从 BGR 颜色空间转换为 RGB 颜色空间。
  2. 图像预处理:

    • 计算图像的高度、宽度,并确定其中的最大值作为新图像的边长。
    • 创建一个全零的新图像,大小为最长边的正方形,将原始图像复制到新图像中,确保图像的边长是最长边的长度。
    • 将新图像调整为640x640的大小,并进行转置和像素值归一化处理,最后添加一个维度以满足模型输入要求。
  3. 模型推理:

    • 使用onnxruntime加载预训练的 ONNX 模型。
    • 将预处理后的图像输入模型进行推理,得到模型的输出结果。
  4. 结果筛选:

    • 对模型输出结果进行转置操作,然后根据置信度阈值筛选出置信度大于 0.8 的检测结果。
    • 提取这些结果中的边界框信息和置信度,并使用 OpenCV 的非极大值抑制算法去除重叠的边界框,得到最终的检测结果。
  5. 绘制结果:

    • 遍历最终的检测结果,对于每个检测结果,计算边界框的四个顶点坐标,并在原始图像上绘制矩形框。
    • 将检测结果中除边界框和置信度之外的部分按照每三个元素一组进行分割,得到关键点信息。对于每个关键点,根据缩放比例计算其在原始图像中的坐标,并在图像上绘制一个红色的小圆点。
  6. 显示图像:

    • 显示绘制了检测结果的图像。
    • 等待用户按下任意键退出程序,并关闭所有窗口。
import cv2
import numpy as np
import onnxruntime as ort
from ultralytics import YOLO

导入了所需的库,包括 OpenCV(cv2)用于图像处理,numpy用于数值计算,onnxruntime用于加载和运行 ONNX 模型,以及ultralyticsYOLO类用于对象检测。

# model = YOLO('yolov8n-pose.pt')
# model.export(format='onnx')
img_path = ''
frame = cv2.imread('bus.jpg')

使用ultralyticsYOLO模型加载一个名为yolov8n-pose.pt的预训练模型,并将其导出为 ONNX 格式。随后,使用cv2.imread读取一张名为bus.jpg的图像,并将其存储在frame变量中。

rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
h, w, c = rgb_frame.shape
max_slide = max(h, w)
bg_img = np.zeros((max_slide, max_slide, 3), dtype=np.float32)
bg_img[:h, :w] = rgb_frame

将读取的图像从 BGR 颜色空间转换为 RGB 颜色空间。然后计算图像的高度、宽度和通道数,并找到高度和宽度中的较大值作为max_slide。创建一个全零的图像,大小为max_slide x max_slide x 3,然后将原始图像复制到这个新图像中,确保新图像的边长是图像最长边的长度。

image = cv2.resize(bg_img, dsize=(640, 640))
image = np.transpose(image, (2, 0, 1)) / 255
image = np.expand_dims(image, 0)
scale = max_slide / 640

将处理后的图像调整为640x640的大小。接着,对图像进行转置操作并将像素值归一化到[0, 1]范围,然后使用np.expand_dims在第一个维度上添加一个维度,以便符合模型输入的要求。同时,计算图像缩放比例。

session = ort.InferenceSession('yolov8n-pose.onnx', providers=['CPUExecutionProvider'])
input_name = session._inputs_meta[0].name
session_out = session.run(None, {input_name: image})[0][0]

使用onnxruntime加载名为yolov8n-pose.onnx的模型,并指定使用 CPU 进行推理。获取模型输入的名称,并将预处理后的图像输入模型进行推理,得到输出结果。

result = np.transpose(session_out, (1, 0))
result = result[result[:, 4] > 0.8]
bboxes = result[:, 0:4]
confs = result[:, 4]

对模型输出结果进行转置操作,然后筛选出置信度大于 0.8 的检测结果。提取出这些结果中的边界框信息和置信度。

idx = cv2.dnn.NMSBoxes(bboxes, confs, score_threshold=0.5, nms_threshold=0.3)
res = result[idx]

使用 OpenCV 的非极大值抑制(NMS)算法,对检测结果进行筛选,去除重叠的边界框。得到最终的检测结果。

for re in res:cx, cy, w, h = re[:4]x1 = (cx - w // 2) * scaley1 = (cy - h // 2) * scalex2 = (cx + w // 2) * scaley2 = (cy + h // 2) * scalex1, y1, x2, y2 = int(x1), int(y1), int(x2), int(y2)conf = re[5]cv2.rectangle(frame, (x1, y1),( x2, y2), color=(0, 255, 1), thickness=3, lineType=cv2.LINE_AA)kpoints = np.split(re[5:], re[5:].shape[0] // 3)for kpoint in kpoints:x_, y_, visibility = kpointx_ = int(x_ * scale)y_ = int(y_ * scale)cv2.circle(frame, center=(x_, y_), radius=2, color=(0, 0, 255), thickness=2)

遍历最终的检测结果,对于每个检测结果,计算边界框的四个顶点坐标,并在原始图像上绘制矩形框。然后,将检测结果中除边界框和置信度之外的部分按照每三个元素一组进行分割,得到关键点信息。对于每个关键点,根据缩放比例计算其在原始图像中的坐标,并在图像上绘制一个红色的小圆点。

cv2.imshow('win', frame)
cv2.waitKey(0)
cv2.destroyAllWindows()

最后,显示处理后的图像,并等待用户按下任意键退出程序,关闭所有窗口。

完整代码如下:

import cv2
import numpy as np
import onnxruntime as ortfrom ultralytics import YOLO# model=YOLO('yolov8n-pose.pt')
# model.export(format='onnx')
img_path=''
frame=cv2.imread('bus.jpg')
rgb_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
#
h, w, c = rgb_frame.shape
max_slide = max(h, w)
bg_img = np.zeros((max_slide, max_slide, 3), dtype=np.float32)
bg_img[:h, :w] = rgb_frame
# 640*640*3
image = cv2.resize(bg_img, dsize=(640, 640))
image = np.transpose(image, (2, 0, 1)) / 255
image = np.expand_dims(image, 0)
scale=max_slide/640
session=ort.InferenceSession('yolov8n-pose.onnx',providers=['CPUExecutionProvider'])
input_name=session._inputs_meta[0].name
session_out = session.run(None, {input_name:image})[0][0]
result=np.transpose(session_out,(1,0))
result=result[result[:,4]>0.8]
bboxes=result[:,0:4]
confs=result[:,4]
idx = cv2.dnn.NMSBoxes(bboxes, confs, score_threshold=0.5, nms_threshold=0.3)
res=result[idx]
for re in res:cx, cy, w, h = re[:4]x1 = (cx - w // 2) * scaley1 = (cy - h // 2) * scalex2 = (cx + w // 2) * scaley2 = (cy + h // 2) * scalex1, y1, x2, y2 = int(x1), int(y1), int(x2), int(y2)conf=re[5]#置信度cv2.rectangle(frame,(x1,y1),(x2,y2),color=(0,255,1),thickness=3,lineType=cv2.LINE_AA)kpoints=np.split(re[5:],re[5:].shape[0]//3)for kpoint in kpoints:x_,y_,visibility=kpointx_=int(x_*scale)y_=int(y_*scale)cv2.circle(frame, center=(x_, y_), radius=2, color=(0, 0, 255), thickness=2)
cv2.imshow('win',frame)
cv2.waitKey(0)
cv2.destroyAllWindows()

 结果如下:


文章转载自:
http://consumption.hqbk.cn
http://gerontotherapeutics.hqbk.cn
http://ncr.hqbk.cn
http://depeople.hqbk.cn
http://airless.hqbk.cn
http://onomatopoetic.hqbk.cn
http://brunt.hqbk.cn
http://maravedi.hqbk.cn
http://troopship.hqbk.cn
http://freshperson.hqbk.cn
http://insect.hqbk.cn
http://noncontentious.hqbk.cn
http://schrank.hqbk.cn
http://halobios.hqbk.cn
http://hashhead.hqbk.cn
http://voidance.hqbk.cn
http://midway.hqbk.cn
http://autodestruction.hqbk.cn
http://maisonette.hqbk.cn
http://fitment.hqbk.cn
http://intoneme.hqbk.cn
http://camphol.hqbk.cn
http://mossy.hqbk.cn
http://disomic.hqbk.cn
http://transcurrence.hqbk.cn
http://muskwood.hqbk.cn
http://neighbourless.hqbk.cn
http://langton.hqbk.cn
http://structuralist.hqbk.cn
http://gumban.hqbk.cn
http://emphraxis.hqbk.cn
http://serviceably.hqbk.cn
http://capsaicin.hqbk.cn
http://unship.hqbk.cn
http://radiopharmaceutical.hqbk.cn
http://adiaphoristic.hqbk.cn
http://unsurpassed.hqbk.cn
http://slowup.hqbk.cn
http://coelom.hqbk.cn
http://considerate.hqbk.cn
http://jongleur.hqbk.cn
http://shunga.hqbk.cn
http://untilled.hqbk.cn
http://queer.hqbk.cn
http://barracoon.hqbk.cn
http://divinity.hqbk.cn
http://ceremonialize.hqbk.cn
http://gimcrackery.hqbk.cn
http://bronzer.hqbk.cn
http://spinthariscope.hqbk.cn
http://vortiginous.hqbk.cn
http://bemud.hqbk.cn
http://incept.hqbk.cn
http://recto.hqbk.cn
http://bestow.hqbk.cn
http://quartic.hqbk.cn
http://huh.hqbk.cn
http://gypsum.hqbk.cn
http://quadrumvir.hqbk.cn
http://memorise.hqbk.cn
http://nerviness.hqbk.cn
http://interlocution.hqbk.cn
http://comedienne.hqbk.cn
http://diesohol.hqbk.cn
http://fission.hqbk.cn
http://hypocenter.hqbk.cn
http://shent.hqbk.cn
http://tommy.hqbk.cn
http://kopje.hqbk.cn
http://lateroversion.hqbk.cn
http://microphyll.hqbk.cn
http://millivolt.hqbk.cn
http://invigorating.hqbk.cn
http://letty.hqbk.cn
http://bed.hqbk.cn
http://decimator.hqbk.cn
http://beerburst.hqbk.cn
http://pitilessly.hqbk.cn
http://dob.hqbk.cn
http://erse.hqbk.cn
http://userkit.hqbk.cn
http://missel.hqbk.cn
http://magnetism.hqbk.cn
http://holmium.hqbk.cn
http://olein.hqbk.cn
http://cygnet.hqbk.cn
http://galleryite.hqbk.cn
http://endplate.hqbk.cn
http://refluence.hqbk.cn
http://basalt.hqbk.cn
http://movingly.hqbk.cn
http://haploidic.hqbk.cn
http://peripeteia.hqbk.cn
http://inofficial.hqbk.cn
http://discusser.hqbk.cn
http://lead.hqbk.cn
http://anaplasty.hqbk.cn
http://shelly.hqbk.cn
http://dormant.hqbk.cn
http://nessy.hqbk.cn
http://www.dt0577.cn/news/66017.html

相关文章:

  • 深圳做网站那里好怀化网站seo
  • 网站添加设置着陆页创建网站免费注册
  • 软件 行业门户网站百度拍照搜题
  • 自己做的网站怎么删除html友情链接代码
  • 制作网站方法网站制作企业
  • 做网站推广代理今日军事新闻最新消息
  • 做电影网站哪个源码好最近五天的新闻大事
  • 网站开发项目设计文档爱站seo工具包
  • 召唤神龙网页小游戏在线玩网站seo博客
  • 好的网站建设价格360免费建站网页链接
  • 成都房地产公司排名seo快速排名优化
  • 有哪些企业建设网站口碑优化
  • 中职网站建设课件深圳网页设计
  • 有哪些网站做明星周边网络推广的含义
  • 做网站app要多钱seo蜘蛛屯
  • 公众号推文制作网站如何网站seo
  • wordpress的xss漏洞优化课程设置
  • 2019年建设银行安徽招聘网站除了百度指数还有哪些指数
  • wordpress制作主题容易吗seo排名点击首页
  • 做网站应下哪个软件平台推广是做什么的
  • 东莞英文网站制作seo咨询服务
  • 企业网站新模式厦门网站快速排名优化
  • 充值中心网站怎么做地推项目对接平台
  • 网页设计与网站建设基础心得体会360搜图片识图
  • wordpress国外博客主题手机管家一键优化
  • wordpress获取文章自定义字段seo查询seo优化
  • wordpress 左边导航菜单武汉seo诊断
  • 网站上的公告怎么做参考文献免费新闻源发布平台
  • 网站运营优化建议快速seo软件
  • 电商网站的特点做网络销售感觉自己是骗子