gpt4 book ai didi

python - 使用 numpy 增强图像 Python cv2 的数组操作

转载 作者:行者123 更新时间:2023-12-02 16:08:40 25 4
gpt4 key购买 nike

鉴于 X 是一个 Numpy 数组 X.shape =(1, 96, 96, 3),基本上是从 CV2 读取的图像。我正在寻找更简单的增强操作的表达方式。

你能解释一下下面几行代码的作用吗

b=X[:, ::-1, :, :]
c=X[:, ::-1, ::-1, :]
d=X[:, :, ::-1, :]

最佳答案

X[::-1]索引适用: X 的索引以-1的步骤从头到尾.

  • b=X[:, ::-1, :, :] - 向上/向下反转图像。
  • c=X[:, ::-1, ::-1, :] - 向上/向下和向左/向右反转图像。
  • d=X[:, :, ::-1, :] - 左右反转图像。

  • 评论: ::不是运算符,实际上是两个 :一个接一个的运营商。 X[::-1]X[ : : -1] 相同.
    引用 Indexing文档。

    The basic slice syntax is i:j:k where i is the starting index, j is the stopping index, and k is the step.

    If i is not given it defaults to 0

    If j is not given it defaults to n


    写作 [: : -1] , 省略 ij , 并设置 k-1 .
    语法的意思是:“从索引 0,取所有元素,步骤 -1”,给出 中的所有元素反向 顺序(沿此轴的所有元素)。

    例子:
    import cv2
    import numpy as np

    # Build input:
    im = cv2.imread('chelsea.png')
    im = cv2.resize(im, (96, 96))
    X = np.empty((1, im.shape[0], im.shape[1], im.shape[2])).astype(np.uint8)
    X[0, :, :, :] = im

    b = X[:, ::-1, :, :]
    c = X[:, ::-1, ::-1, :]
    d = X[:, :, ::-1, :]

    结果:
    我是:
    enter image description here
    乙:
    enter image description here
    C:
    enter image description here
    d:
    enter image description here

    笔记:
    我有点忽略了拳头索引,因为维度是 1 .
    在多帧的情况下,第一个索引通常会应用帧数。

    关于python - 使用 numpy 增强图像 Python cv2 的数组操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60031138/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com