栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

opencv学习(待完善)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

opencv学习(待完善)

# import cv2
# # 读取图像 0加载灰度图像 1加载原图像
# img = cv2.imread('../image/1.jpg',-1)
# # 0可以自由缩放 1不能调整大小
# cv2.namedWindow('美女',1)
# cv2.imshow('美女',img)
# # 显示多少毫秒  0或者什么都不填表示一直显示,直到任何按键为止
# cv2.waitKey()
# # 销毁所有窗口 销毁特定窗口请加参数
# cv2.destroyAllWindows()

# import cv2
# img = cv2.imread('../image/3.jpg',1)
# px = img[100,100]
# print(px)
# # 精确到某个像素
# print(img.item(100,100,0))
# # 查看图像属性
# print(img.shape)
# # 图像像素个数
# print(img.size)
# # 图像数据类型
# print(img.dtype)
# # 图像特定区域的选取
# ROI = img[1:240,60:270]
# cv2.imshow('ROI',ROI)
# # split拆分图像通道
# b, g, r = cv2.split(img)
# img[:, :, 2] = 0
# r = img[:, :, 2]
# # merge合并
# img = cv2.merge((b, g, r))

# import cv2
# img1 = cv2.imread('../image/dongman1.jpg')
# img2 = cv2.imread('../image/dongman2.jpg')
# # 两幅图像的减法 目标检测
# res = cv2.subtract(img1,img2)
# # 非运算,二值化图像取反
# fei = cv2.bitwise_not(img1,img2)
# cv2.imshow('res',fei)

# import cv2
# img = cv2.imread('../image/1.jpg')
# # 颜色空间转化 灰度化
# gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# # HSV色彩空间
# hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# hls = cv2.cvtColor(img, cv2.COLOR_BGR2HLS)
# lab = cv2.cvtColor(img, cv2.COLOR_BGR2LAB)
# luv = cv2.cvtColor(img, cv2.COLOR_BGR2LUV)
# cv2.imshow('gray', gray)
# cv2.imshow('hsv', hsv)
# cv2.imshow('hls', hls)
# cv2.imshow('lab', lab)
# cv2.imshow('luv', luv)
# cv2.waitKey(0)
# cv2.destroyAllWindows()

# import cv2
# import numpy as np
# import matplotlib.pyplot as plt
# 
# src = cv2.imread("image/paojie.jpg", cv2.IMREAD_GRAYSCALE)
# # 设置画布尺寸
# plt.figure(figsize=(8, 10))
# # 喷涂灰度显示
# plt.imshow(src, cmap="gray")
# # 显示图片
# plt.show()
# # 拷贝副本
# src1 = src.copy()
# min, max, minLoc, maxLoc = cv2.minMaxLoc(src)
# print("min: %.2f, max: %.2f" % (min, max))
# print("min loc: ", minLoc)
# print("max loc: ", maxLoc)

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

img = cv2.imread('../image/2.jpg', 1)

surf = cv2.xfeatures2d.SURF_create(30000)

kp = surf.detect(img, None)

img2 = cv2.drawKeypoints(img, kp, None, (255, 0, 255), 4)
surf.setUpright(True)
surf.setHessianThreshold(40000)
kp = surf.detect(img, None)
img3 = cv2.drawKeypoints(img, kp, None, (255, 0, 255), 4)

plt.subplot(121), plt.imshow(img2),
plt.title('Dstination'), plt.axis('off')
plt.subplot(122), plt.imshow(img3),
plt.title('Dstination'), plt.axis('off')
plt.show()


def BRIEF(img):
    # Initiate FAST detector
    star = cv2.xfeatures2d.StarDetector_create()

    # Initiate BRIEF extractor
    brief = cv2.xfeatures2d.BriefDescriptorExtractor_create()

    # find the keypoints with STAR
    kp = star.detect(img, None)

    # compute the descriptors with BRIEF
    kp, des = brief.compute(img, kp)

    print(brief.descriptorSize())
    print(des.shape)
    # draw only keypoints location,not size and orientation
    img2 = cv2.drawKeypoints(img, kp, None, color=(0, 255, 0), flags=0)
    plt.imshow(img2), plt.show()

def ORB(img):
    # Initiate ORB detector
    orb = cv2.ORB_create()

    # find the keypoints with ORB
    kp = orb.detect(img, None)

    # compute the descriptors with ORB
    kp, des = orb.compute(img, kp)

    # draw only keypoints location,not size and orientation
    img2 = cv2.drawKeypoints(img, kp, None, color=(0, 255, 0), flags=0)
    plt.imshow(img2), plt.show()


ORB(img)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/926260.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号