Python Opencv实践 - Harris角点检测

news/2024/7/21 3:56:54 标签: opencv, 人工智能, 计算机视觉, 图像处理, python

参考资料:https://blog.csdn.net/wsp_1138886114/article/details/90415190

import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt


img = cv.imread("../SampleImages/chinease_tower.jpg", cv.IMREAD_COLOR)
plt.imshow(img[:,:,::-1])


#转换为灰度图
img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
plt.imshow(img_gray, cmap=plt.cm.gray)


#转换为灰度图
img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
plt.imshow(img_gray, cmap=plt.cm.gray)

#焦点检测
#1. cornerHarris函数要求的输入是float32,首先通过numpy.float32进行转换
img_gray = np.float32(img_gray)
#2. 使用cornerHarris进行焦点检测
#   cv.(src=gray, blockSize, ksize, k, dst=None, borderType=None)
#   src - float32类型的灰度图像数据
#   blockSize - 焦点检测的窗口大小
#   ksize: sobel算子卷积核大小
#   k: Harris算法中的的k值,[0.04,0.06]
#   参考资料:https://blog.csdn.net/wsp_1138886114/article/details/90415190
results = cv.cornerHarris(img_gray, 2, 3, 0.04)
#设置阈值,大于阈值的角点用绿色标注
img[results > 0.001 * results.max()] = [0, 255, 0]
#图像显示
plt.imshow(img[:,:,::-1])

 


http://www.niftyadmin.cn/n/5008227.html

相关文章

STM32单片机OLED贪吃蛇游戏记分计时

实践制作DIY- GC00165---OLED贪吃蛇游戏 一、功能说明: 基于STM32单片机设计---OLED贪吃蛇游戏 二、功能说明: STM32F103C系列最小系统板0.96寸OLED显示器上、下、左、右4个按键 1.通过OLED配合按键实现贪吃蛇游戏 2.可以上下左右移动。 3.可以统计显…

LeetCode每日一题:2594. 修车的最少时间(2023.9.7 C++)

目录 2594. 修车的最少时间 题目描述: 实现代码与解析: 二分 原理思路: 2594. 修车的最少时间 题目描述: 给你一个整数数组 ranks ,表示一些机械工的 能力值 。ranksi 是第 i 位机械工的能力值。能力值为 r 的机…

【效率提升】手把手教你如何使用免费的 Amazon Code Whisperer 提升开发效率堪比 GitHub Copilot 平替

说明 GitHub copilot 虽然很强,但是一个月10美金的费用拿来吃个小火锅他不香吗?而身为云计算博主将向你推荐一款可以平替 GitHub copilot 并且免费的支持多种编程语言的 AI 编程助手 Amazon Code Whisperer。 亚马逊云科技开发者社区为开发者们提供全球…

论文创新点

【醍醐灌顶】论文创新点一定要是没人做过的?盘点几种寻找idea的万能模板_哔哩哔哩_bilibilihallo这里是新新,本期视频盘点了几种百用不腻的找论文idea寻找方法,希望对你们也能有所帮助!视频中新新所整理的论文合集可以关注我的公众…

容器资料: Docker和Singularity

容器资料 Docker和Singularity Docker比较适合测试: 环境适配,每种环境对应一个容器。Docker需要host宿主机上运行Docker服务(root权限),隔离性很高,但会牺牲性能,对GPU环境支持不好(需要安装NVIDIAN公司的插件才能把GPU暴露给container) Sigularity可…

nvm管理(切换)node版本,方便vue2,vue3+ts开发

使用nvm切换node版本 1. 完全删除之前的node及npm(清理干净Node: 应用程序,缓存的文件,环境变量 ) 2. 使用管理员身份安装nvm,下载如下 3. 安装完nvm之后找到nvm下载路径对应的文件 4. 使用管理员身份打开cmd&#xff…

SSL证书只有收费的吗?有没有免费使用的?

首先明白SSL证书是什么SSL英文全称:英文全称: Secure Socket Layer Certificate,中文全称:安全套接字层证书。 SSL是一种由数字证书颁发机构(CA) 签发的数字证书。它用于建立安全的加密连接,确保通过网络传输的数据在客户端和服务器之间的安全性和完整性…

java中使用 Integer 和 int 的 含义、使用方法 及之间的区别

学习目标: 学习目标如下: 明确 Integer 和 int 的 含义、使用方法 及之间的区别 学习内容: 一、区别: 1.Integer是int的包装类,int则是java的一种基本的数据类型; 2.Integer变量必须实例化之后才能使用&a…