mixChannels with InputArray does not work with only one mat (Bug #1446)


Added by dejohn - over 13 years ago. Updated almost 13 years ago.


Status:Done Start date:
Priority:High Due date:
Assignee:Vadim Pisarevsky % Done:

0%

Category:core
Target version:2.4.0
Affected version: Operating System:
Difficulty: HW Platform:
Pull request:

Description

InputArray concept as i understand can work with std::vector<Mat> or only one Mat, but in mixChannels the second variant leads to incorrect work

core/source/convert.cpp line 511

int i, nsrc = (int)src.total(), ndst = (int)dst.total();

Using function total with no arguments to aquire the total number of matricies in InputArray is incorrect in case of Mat inserted in the proxy class.

I think in that case using std::vector or only one Mat should leads to the same behaviour.

So it is the problem inside InputArray.size() function. Matrix.cpp line 1019-1023


Associated revisions

Revision 8989e0b0
Added by Vadim Pisarevsky over 13 years ago

fixed single-mat input/output in mixChannels() (ticket #1446)

Revision ad404ef4
Added by Andrey Pavlenko over 11 years ago

Merge pull request #1446 from lluisgomez:scene_text_detection_NM_fix2

History

Updated by Vadim Pisarevsky over 13 years ago

the bug has been fixed in trunk, r7042

  • Status changed from Open to Done
  • (deleted custom field) set to fixed

Updated by Andrey Kamaev almost 13 years ago

  • Target version set to 2.4.0

Also available in: Atom PDF