Я большой поклонник равномерной инициализации, и я использую ее в большинстве случаев, когда я хочу создать инициализированную переменную.Недавно я столкнулся со странной ошибкой при создании переменной типа cv::Mat
.
cv::Mat lookUpTable( 1, 256, CV_8U );
uchar* p = lookUpTable.ptr();
for( int i = 0; i < 256; ++i )
{
p[i] = cv::saturate_cast<uchar>( pow( i / 255.0, gamma ) * 255.0 );
}
. Хотя эта реализация работает хорошо, если используется равномерная инициализация
cv::Mat lookUpTable{ 1, 256, CV_8U };
, следующая ошибка показываетup
malloc_consolidate (): неверный размер чанка
Я все еще не совсем уверен, что радует.Используется ли другой конструктор (чем предполагалось)?Может кто-нибудь объяснить, пожалуйста?