写点什么

opencv 使用 GPU 加速

  • 2022 年 9 月 27 日
    北京
  • 本文字数:609 字

    阅读完需:约 2 分钟

1

自动化测试过程中使用图片识别技术识别控件已经成为普遍需求。图片识别通常以 HTTP 的 API 形式提供给测试开发者,API 的响应速度至关重要。

1

本文关注 opencv 中相关 API 的提速,服务端的其他提速技术不在讨论范围内。

opencv-python 默认不提供 GPU 的支持,也就是 cuda 库的支持,需要自己编译。本文选用 opencv 3.2.0 cuda8.0(因为官方推荐使用这两个版本),使用其他版本可能会出现编译失败的问题,如果你有信心解决具体问题,欢迎尝试。

1

图片匹配

# coding=utf-8import cv2import time def match_test():    target = cv2.imread("./target.png")    template = cv2.imread("./template.jpg")    result = cv2.matchTemplate(target, template, cv2.TM_CCOEFF_NORMED)    minVal, maxVal, minLoc, maxLoc = cv2.minMaxLoc(result)    h, w = template.shape[:-1]    if maxVal > 0.5:        middle_point = (int(maxLoc[0] + w / 2), int(maxLoc[1] + h / 2))        return middle_point    else:        return None if __name__ == '__main__':    num = 100    begin = time.time()    for i in range(num):        match_test()    print (time.time()-begin)/num    
复制代码

结果

CPU:0.299

GPU:0.181

提升:39.4%


点击下方链接免费领取:性能测试+接口测试+自动化测试+测试开发+测试用例+简历模板+测试文档

http://qrcode.testing-studio.com/f?from=infoQ&url=https://ceshiren.com/t/topic/22265

用户头像

社区:ceshiren.com 微信:ceshiren2021 2019.10.23 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料,实时更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬。

评论

发布
暂无评论
opencv 使用 GPU 加速_霍格沃兹测试开发学社_InfoQ写作社区