簡體   English   中英

減少 python 中圖像的處理時間

[英]Reducing processing time of images in python

我有一個處理黑白圖像的 python 腳本。 我做的第一件事是通常的過程不超過 170 毫秒,即

  img = img[200:900, 250:1100]
  imag = image_resize(img, height=960, width=1280)
  ImgBlur = cv2.GaussianBlur(imag, (11, 11), 0)
  ret, thresh1 = cv2.threshold(ImgBlur, 100, 255, cv2.THRESH_BINARY)
  imgCanny = cv2.Canny(thresh1, 100, 100)

緊接着我需要在圖像中找到白色部分並執行此 function

  A = np.array(imgCanny)
  xpos = []
  ypos = []
  for i in range(len(A)):
      for j in range(len(A[i])):
          if A[i][j] == 255:
              ypos.append(i)
              xpos.append(j)

我的問題是這個 function 需要 2.3 秒,大部分是處理時間的 98%。 有誰知道如何通過另一種選擇來減少它?

我得到的 imageCanny 結果就是這種圖像imgCanny

根據您需要的結果 Numpy.where 和 numpy.argwhere 應該完全符合您的要求,如下所示: Convert mask (boolean) array to list of x,y coordinates

np.argwhere(a==255)

將返回所有坐標的數組

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM