前言

本章主要讲述图片的缩小与放大,以及在图片上框出自己目标的东西


目录

实现opencv在图片上画框准确定位某个主体

一、如何在opencv内导入图片

二、如何对图片进行缩放?

1.在放入图片的基础上进行缩放

2.运行程序

三.如何在图片上框出我们想要的内容。

1.首先这个涉及到矩形的绘制

2,接下来把矩形代码放入图片的程序下运行


提示:以下是本篇文章正文内容,下面案例可供参考

实现opencv在图片上画框准确定位某个主体

一、如何在opencv内导入图片

代码如下(示例):

import cv2
import numpy as npimg = cv2.imread('C:/Users/Rise/Pictures/Saved Pictures/1.JPG')
cv2.imshow('IG',img)
cv2.waitKey(0)

将自己所要放入的图片填入imread()对应的位置,这样的就可以输出自己放入的图片。

这边有两点需要注意:

1.代码结尾cv.waitKey(0)括号中的0是为了让你的图片可以持续输出,直到你手动关闭它。如果要让他自己关闭,可以填上时间让他一定时间后自己关闭。(例如:cv.waitKey (10000) # 显示 10000 ms 即 10s 后消失

2.在导入图片文件的地址时,要注意斜杠的方向,如果直接复制地址,斜杠可能会是反着的,需要手动纠正。

下图是图片导出效果.

二、如何对图片进行缩放?

(1)设置输出图片的尺寸                            img=cv2.resize(img,(   ,    ))
(2)设置缩放因子  (None指图片尺寸)   img=cv2.resize(img,None,fx=0.7,fy=0.7)

1.在放入图片的基础上进行缩放

代码如下(示例):

import cv2
import numpy as npimg = cv2.imread('C:/Users/Rise/Pictures/Saved Pictures/1.JPG')
cv2.imshow('IG',img)
cv2.waitKey(0)import cv2
img=cv2.imread('C:/Users/Rise/Pictures/Saved Pictures/1.JPG')
img1=cv2.resize(img,(500,500))#设置输出图片的尺寸
img2=cv2.resize(img,None,fx=0.7,fy=0.7)#None指图片尺寸,但我们设置了缩放因子
cv2.imshow('text',img1)
cv2.imshow('text1',img2)
cv2.waitKey(0)

2.运行程序

三.如何在图片上框出我们想要的内容。

1.首先这个涉及到矩形的绘制

如何绘制一个矩形?(确定两个点)

(1)首先矩形在程序中的代码为cv.rectangle

而在矩形中,我们包括了6个要素

cv.rectangle(img, ptLeftTop, ptRightBottom, point_color, thickness, lineType)

分别是(文件图片,左上顶点,右下顶点,颜色,宽度,线型)

2,接下来把矩形代码放入图片的程序下运行

具体代码如下:

import numpy as np
import cv2 as cv
import cv2
import numpy as np# 矩形左上角和右上角的坐标,绘制一个红色矩形
img = cv2.imread('C:/Users/Rise/Pictures/Saved Pictures/1.JPG')
ptLeftTop = (320, 500)
ptRightBottom = (1050, 760)
point_color = (0, 0, 255) # BGR
thickness = 1
lineType = 4
cv.rectangle(img, ptLeftTop, ptRightBottom, point_color, thickness, lineType)
cv2.imshow('IG',img)
cv2.waitKey(0)

效果如下:


                                             中间的“我们是冠军”被矩形框起来

 

以上就是本章的主要内容,有什么不足会继续改进的。

实现opencv在图片上画框准确定位某个主体相关推荐

  1. 通过opencv在图片上加上文字_基于Ubuntu16

    本文主要介绍,如何通过**C++**语言在Ubuntu操作系统下的OpenCV中将一个图片叠加上文字 通过opencv在图片上叠加上文字 一.汉字点阵字库原理 1.汉字的三种编码 1.1区位码 1.2 ...

  2. 基于Ubuntu系统,调用opencv在图片上显示数字和汉字

    文章目录 一.汉字编码的介绍 1.汉字编码的发展过程 (1)汉字编码产生的原因 (2)常用的汉字编码 2.区位码 (1)产生原因 (2)概念简述 (3)区域分布情况 3.机内码 (1)基本概念 (2) ...

  3. 基于Ubuntu系统调用opencv——在图片上显示汉字和数字

    文章目录 一. 认识汉字编码 (1)区位码 (2)机内码 (3)点阵字库结构 (4)汉字点阵获取 二. 实例--调用opencv在图片上显示文字 (1)准备工作 (2)撰写代码 (3)编译运行 三. ...

  4. python图片识别是否p过_用 Python 和 OpenCV 检测图片上的条形码

    用 Python 和 OpenCV 检测图片上的的条形码 这篇博文的目的是应用计算机视觉和图像处理技术,展示一个条形码检测的基本实现.我所实现的算法本质上基于StackOverflow 上的这个问题, ...

  5. C#图片处理之:在图片上画框(圈)

    有时候给别人演示图片,例如培训某个软件使用的时候,往往需要在画面上画个框或者圈,提醒用户注意这是个重点.其实这个功能并不难,只需要知道Pen对象的用法就可以了.我们对框或者圈样式的控制都可以通过对Pe ...

  6. 图片 手动画框 matlab,matlab在图片上画框

    之前写过一个MATLAB在图片上画框的代码, http://blog.csdn.net/carson2005/article/details/17262811 最近使用后发现效果不好,貌似有个bug, ...

  7. 使用Python和OpenCV检测图片上的条形码

    这篇博文的目的是应用计算机视觉和图像处理技术,展示一个条形码检测的基本实现.我所实现的算法本质上基于StackOverflow 上的这个问题,浏览代码之后,我提供了一些对原始算法的更新和改进. 首先需 ...

  8. JAVA Opencv在图片上添加中文

    问题描述: 将图片进行均值.中值.高斯滤波,高斯边缘检测,并在图片上添加中文文字. 一.算法思想 首先经过opencv的一系列操作,例如高斯模糊.均值模糊等操作后.用Imgcodecs.imwrite ...

  9. Opencv在图片上写文字(hello)

    分三步走:第一步,功能说明:第二步,结果图显示:第三步,API详解:第四步,代码展示(注释很详细,保证所有有C++基础的人都可以看懂. 第一步,功能说明:在图片上写入字.是不是很6呀.不多说了,直接上 ...

最新文章

  1. 建模步骤_Revit软件介绍?Revit参数化构件建模步骤
  2. SAP PM 初级系列26 - 设备功能位置的Document
  3. 简单的Java秒表计时器(线程),Java计时器使功能每分钟运行
  4. effective typescript_初学typescript(一) - 来亦何哀
  5. HotSpot VM运行时01---命令行选项解析
  6. Python 中的 import 与 from import 区别
  7. UI学习笔记---第十四天数据持久化
  8. 数学 :追求真和美的学问
  9. 拼多多再添新瓜!15 岁上浙大、22 岁获世界冠军的天才黑客 Flanker 疑因拒绝违法攻击被强制开除...
  10. C语言二级考试都是从题库抽取吗,c語言二級考試題庫_全國計算機等級考試二級C語言的考試題目都是從《C語言題庫》裡面抽取的題目嗎_淘題吧...
  11. 【学习笔记】子集生成的方法
  12. windows打流工具IxChariot使用教程
  13. UML视图---构件图和部署图
  14. QQ空间登录参数分析Firefox+Firebug
  15. 什么叫反向链接?什么是死链接?什么是错误链接?
  16. win10笔记本网络重置后没有网络连接了
  17. 劳务派遣经营许可证怎样办理
  18. Cesium中添加entitie模型,实现贴地。
  19. android 信息-- 发彩信(1)
  20. OverlayFS 注册与挂载

热门文章

  1. mysql 二进制日志大小_mysql二进制日志相关参数
  2. 工业和信息化部发布《关于电信设备进网许可制度若干改革举措的通告》
  3. 开源GIS系统现状分析(转)
  4. 关于RTKLIB中用多普勒检测周跳方法的改进和思考
  5. 高仿微信上传头像附带压缩,旋转图片,附加demo
  6. osta计算机等级考试cad,Autodesk在线考试流程介绍
  7. GrapeCity Documents for Word[GcWord]
  8. android opencv 银行卡识别,【opencv小应用】银行卡号识别(一)
  9. Matlab进阶绘图第4期—三维堆叠柱状图/三维堆积图
  10. [转]为什么我们做分布式要用redis?