1. 磐创AI-开放猫官方网站首页
  2. Medium

用于图像分析的OpenCV与Skimage。哪一个更好?

这两种算法在它们可以检测到什么和不能检测到什么方面都有起伏。

OpenCV在后台用C++编程,作为一个机器学习包,用来分析python中的图像模式。

Skimage也被称为Scikit-Image,是一个机器学习包,用于图像预处理以发现隐藏模式。

这两个平台都是最好的吗?

建议在基于服务器的笔记本上使用OpenCV,比如Google CoLab,或者Google云、Azure云甚至IBM中的笔记本扩展。

而对于Skimage来说,即使是Jupyter Lab/Notebook也工作得很好,因为它在处理方面没有OpenCV那么重。

使用Skimage分析面部数据的Python代码

from skimage import data
from skimage.feature import Cascade

import matplotlib.pyplot as plt
from matplotlib import patches

# Load the trained file from the module root.
trained_file = data.lbp_frontal_face_cascade_filename()

# Initialize the detector cascade.
detector = Cascade(trained_file)

img = data.astronaut()

detected = detector.detect_multi_scale(img=img,
scale_factor=1.2,
step_ratio=1,
min_size=(60, 60),
max_size=(90, 500))

plt.imshow(img)
img_desc = plt.gca()
plt.set_cmap('gray')

for patch in detected:

img_desc.add_patch(
patches.Rectangle(
(patch['c'], patch['r']),
patch['width'],
patch['height'],
fill=False,
color='r',
linewidth=2
)
)

plt.show()

# We have detected a face using Skimage in python

因此,我们在这里看到了如何在python中使用Skimage检测人脸和推断图像。

使用OpenCV分析数据的Python代码

from google.colab import drive

在这里,我们使用OpenCV上传了一张图片

eye_detector = cv2.CascadeClassifier('/content/drive/MyDrive/haarcascade_frontalcatface.xml')

在这里,我们使用OpenCV中的Hascade参数技术来检测其中一个人脸,该参数可以调整为检测所有人脸。

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/07/27/%e7%94%a8%e4%ba%8e%e5%9b%be%e5%83%8f%e5%88%86%e6%9e%90%e7%9a%84opencv%e4%b8%8eskimage%e3%80%82%e5%93%aa%e4%b8%80%e4%b8%aa%e6%9b%b4%e5%a5%bd%ef%bc%9f/

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息