<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          【CV】圖像分析用 OpenCV 與 Skimage,哪一個更好?

          共 2871字,需瀏覽 6分鐘

           ·

          2021-12-14 09:07

          這兩種算法在它們可以檢測到的和不能檢測到的方面都有其起伏。


          OpenCV 是用 C++ 在后端進行編程的,并作為一個機器學(xué)習(xí)包,來分析 Python 中的圖像模式。


          Skimage 也稱為 Scikit-Image ,是一個機器學(xué)習(xí)軟件包,用于圖像預(yù)處理以發(fā)現(xiàn)隱藏模式。


          兩者的最佳平臺

          OpenCV 建議在基于服務(wù)器的 notebook 上完成,比如 google colab,或者 google cloud、Azure cloud 甚至 IBM 中的 notebook 擴展。


          而對于 Skimage 來說,即使是 Jupyter Lab/Notebooks 也能很好地工作,因為它在處理上沒有 OpenCV 那么復(fù)雜。


          使用 Skimage 分析面部數(shù)據(jù)的 Python 代碼
          from skimage import datafrom skimage.feature import Cascade
          import matplotlib.pyplot as pltfrom 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# Obtain the segmentation with default 100 regionssegments = slic(img)
          # Obtain segmented image using label2rgbsegmented_image = label2rgb(segments, img, kind=’avg’)
          # Detect the faces with multi scale methoddetected = detector.detect_multi_scale(img=segmented_image, scale_factor=1.2, step_ratio=1, min_size=(10, 10), max_size=(1000, 1000))
          # Show the detected facesshow_detected_face(segmented_image, detected)

          因此我們在這里看到了如何使用 python 中的 Skimage 檢測人臉和推斷圖像。


          使用?OpenCV 分析數(shù)據(jù)的 Python 代碼


          from google.colab import drivedrive.mount('/content/drive')image = cv2.imread(r'/content/drive/MyDrive/12-14-2020-tout.jpg')# check properties of the imageimage.shape# This image has 1333 pxl width, 2000 pxl height and 3 channels(red, green, blue)from google.colab.patches import cv2_imshowcv2_imshow(image)

          這里我們使用OpenCV上傳了一張圖片:

          eye_detector = cv2.CascadeClassifier('/content/drive/MyDrive/haarcascade_frontalcatface.xml')eye_detections = eye_detector.detectMultiScale(image)eye_detections# detect face with eyes on one of the faceseye_detections = eye_detector.detectMultiScale(image)for (x,y,w,h) in eye_detections:cv2.rectangle(image, (x,y), (x+w, y+h), (0,300,0), 2)cv2_imshow(image)

          在這里,我們使用 OpenCV 中的 Hascade 參數(shù)技術(shù)檢測了其中一張人臉,該技術(shù)也可以調(diào)整以檢測所有人臉。


          往期精彩回顧




          站qq群955171419,加入微信群請掃碼:
          瀏覽 70
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费公开成人视频 | 狼人色综合网 | 蜜桃久久久久久久 | 俺去也成人网 | 亚洲日本色情视频在线 |