我需要将每个元素划分为另一个元素的IplImage。 如果我使用3 IPL_DEPTH_8U图像它可以工作,但如果我使用3 IPL_DEPTH_32F图像我在内存位置得到一个错误Cv :: Exception ... 代码就是 cvDiv(im1,im2,im3); 我确定3张图片,错误是在cvDiv
答案 0 :(得分:0)
它们都需要具有相同的类型和大小,并且必须是单通道。
cvDiv()
适用于数组,这意味着如果您的图片有多个频道,则必须为每个频道单独重复此操作才能使其正常工作。
正在发生的事情是,当您的图像IPL_DEPTH_8U
时,他们正在存储灰度图像,这意味着单个通道。这就是它起作用的原因。
当它们IPL_DEPTH_32F
时,它们可能是彩色的,这意味着它们有3个通道(RGB)。这就是你得到错误的原因。
如果您想知道如何单独使用每个频道,check this message。