久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

如何使用 opencv copyTo() 函數?

How to use opencv copyTo() function?(如何使用 opencv copyTo() 函數?)
本文介紹了如何使用 opencv copyTo() 函數?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我已閱讀

請注意,在掩碼數組中填充了一個額外的維度,以便可以廣播.

I have read through the documentation for copyTo() but am still confused on how this function would be applied to the following code. This anwer states that we can use the copyTo function instead of 255-x. How would this function be applied in this case? I would appreciate a code snippet.

#   Compute the gradient map of the image
def doLap(image):

    # YOU SHOULD TUNE THESE VALUES TO SUIT YOUR NEEDS
    kernel_size = 5         # Size of the laplacian window
    blur_size = 5           # How big of a kernal to use for the gaussian blur
                            # Generally, keeping these two values the same or very close works well
                            # Also, odd numbers, please...

    blurred = cv2.GaussianBlur(image, (blur_size,blur_size), 0)
    return cv2.Laplacian(blurred, cv2.CV_64F, ksize=kernel_size)

#
#   This routine finds the points of best focus in all images and produces a merged result...
#
def focus_stack(unimages):
    images = align_images(unimages)

    print "Computing the laplacian of the blurred images"
    laps = []
    for i in range(len(images)):
        print "Lap {}".format(i)
        laps.append(doLap(cv2.cvtColor(images[i],cv2.COLOR_BGR2GRAY)))

    laps = np.asarray(laps)
    print "Shape of array of laplacians = {}".format(laps.shape)

    output = np.zeros(shape=images[0].shape, dtype=images[0].dtype)

    abs_laps = np.absolute(laps)
    maxima = abs_laps.max(axis=0)
    bool_mask = abs_laps == maxima
    mask = bool_mask.astype(np.uint8)
    for i in range(0,len(images)):
        output = cv2.bitwise_not(images[i],output, mask=mask[i])

    return 255-output

解決方案

Sorry that I kind of misled you there. Although it works nicely in C++, I cannot find the binding in Python. You can, however, use numpy.copyto function.

Here is a small demo that shows that both method (bitwise_not and copyto) produce identical result.

import cv2
import numpy as np

# Create two images
im1 = np.zeros((100, 100, 3), np.uint8)
im1[:] = (255, 0, 0)
im2 = np.zeros((100, 100, 3), np.uint8)
im2[:] = (0, 255, 0)

# Generate a random mask
ran = np.random.randint(0, 2, (100, 100), np.uint8)

# List of images and masks
images = [im1, im2]
mask = [ran, 1-ran]

not_output = np.zeros((100, 100, 3), np.uint8)
copy_output = np.zeros((100, 100, 3), np.uint8)

for i in range(0, len(images)):
    # Using the 'NOT' way
    not_output = cv2.bitwise_not(images[i], not_output, mask=mask[i])
    # Using the copyto way
    np.copyto(copy_output, images[i], where=mask[i][:, :, None].astype(bool))

cv2.imwrite('not.png', 255 - not_output)
cv2.imwrite('copy.png', copy_output)

Note that an extra dimension was padded to the mask array so that it can be broadcasted.

這篇關于如何使用 opencv copyTo() 函數?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

How to draw a rectangle around a region of interest in python(如何在python中的感興趣區域周圍繪制一個矩形)
How can I detect and track people using OpenCV?(如何使用 OpenCV 檢測和跟蹤人員?)
How to apply threshold within multiple rectangular bounding boxes in an image?(如何在圖像的多個矩形邊界框中應用閾值?)
How can I download a specific part of Coco Dataset?(如何下載 Coco Dataset 的特定部分?)
Detect image orientation angle based on text direction(根據文本方向檢測圖像方向角度)
Detect centre and angle of rectangles in an image using Opencv(使用 Opencv 檢測圖像中矩形的中心和角度)
主站蜘蛛池模板: 久久精品久久精品 | 欧美性久久 | 亚洲经典一区 | 久久99国产精一区二区三区 | 亚洲国产一区二区在线 | 亚洲导航深夜福利涩涩屋 | 久久综合成人精品亚洲另类欧美 | 国产特级毛片aaaaaa喷潮 | 亚洲一区二区av | 国产精品久久久久久久粉嫩 | 中文字幕日韩三级 | 欧美激情在线播放 | 久久久久亚洲精品 | 狠狠爱网址 | 男女羞羞视频在线免费观看 | 91在线第一页 | 99久久精品免费看国产四区 | 久免费视频| 中文字幕不卡 | 国产精品欧美一区二区 | 亚洲成a人片 | 亚洲va欧美va人人爽午夜 | 91久久精品一区二区二区 | 精产国产伦理一二三区 | 久久久久国产一区二区三区 | 久久91精品久久久久久9鸭 | 国产三区精品 | 国产第一区二区 | 国产伦精品一区二区三区视频金莲 | 久久精品高清视频 | 狠狠操电影| 日韩精品在线播放 | 亚洲精品欧美一区二区三区 | 国产亚洲成av人片在线观看桃 | 欧美日韩国产精品 | 成人 在线 | 狼色网 | 一级片免费观看 | 日韩一区二区在线视频 | 久久久亚洲一区 | 亚洲免费视频网站 |