Hướng dẫn create a binary image in python - tạo một hình ảnh nhị phân trong python

Tôi đã xây dựng hình ảnh của mình với cv2.thresh_binary và chức năngcv2.THRESH_BINARY and the function

ret, im_thresh = cv2.threshold [gray_image, 40, 255, cv2.thresh_binary]

Nhưng màu trắng phải là 1 để làm việc với chương trình của tôi.

Để giúp tôi đã thực hiện:

height = int[np.size[im_thresh, 0]]
width = int[np.size[im_thresh, 1]]

for x in range[height]:
    for y in range[width]:
        if im_thresh[x,y]==255:
            im_thresh[x,y] = 1

Câu hỏi của tôi: Có cách nào để làm điều này nhanh hơn trong Python không?Have any way to do this faster in python?

Khi được hỏi ngày 12 tháng 5 năm 2017 lúc 20:10May 12, 2017 at 20:10

Hãy thử sử dụng chỉ số boolean để có được và đặt các giá trị của các mảng, tránh được vòng lặp lồng nhau.

import numpy as np
from numpy import random

# Generating an image of values between 1 and 255. 
im_thresh = random.randint[1,256, [64,64]]

# Set anything less than 255 to 0. Unnecessary if cv2 does this during threshold. 
# Must go before the operation below in order not to set all values to 0. 
im_thresh[im_thresh

Bài Viết Liên Quan

Chủ Đề