【问题标题】:how to do 3d matrix to 3d multiplication in python without loops?如何在没有循环的python中进行3d矩阵到3d乘法?
【发布时间】:2015-01-21 22:14:43
【问题描述】:

我正在我的项目中进行分割部分,我需要将 3 维蒙版与彩色图像相乘。

现在在做什么:

maskedFrame=np.zeros((rgbFrame.shape))
maskedHsvFrame=np.zeros((rgbFrame.shape))
for color in range(0,3):
    maskedFrame[:,:,color]=rgbFrame[:,:,color]*biscuitMask
    maskedHsvFrame[:,:,color]=hsvFrame[:,:,color]*biscuitMask

在python中是否可以不使用任何循环进行乘法?

【问题讨论】:

    标签: python image-processing numpy image-segmentation


    【解决方案1】:

    AFAIK,numpy 可以 braodcast biscuitMask 沿着颜色维度来适应框架的形状。
    该广播是自动完成的。因此,

    maskedFrame = rgbFrame * biscuitMask
    maskedHsvFrame = hsvFrame * biscuitMask 
    

    应该在没有任何循环或修改的情况下工作。

    PS,
    如果你熟悉,广播很像应用,只有numpy会自动为你做。

    【讨论】:

      猜你喜欢
      • 2011-07-17
      • 2022-06-30
      • 1970-01-01
      • 2020-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-11
      相关资源
      最近更新 更多