Я получаю соответствие блоков с помощью параметра настройки.
Я использовал следующие условия для numDisparities.
if (bmTuneVar::numDisparities_slider < 16 ) bmTuneVar::numDisparities_slider = 16;
if (bmTuneVar::numDisparities_slider % 16 == 0) bmTuneVar::numDisparities_slider+ 16;
Когда я получаю значение от ползунка трекбар. я получил
ошибка это вне диапазона. и numDisparities должно быть больше 0 и делится на 16.
это то, что я проверяю вышеизложенное.
тогда я не понимаю, почему это создает ошибку.
Кто угодно может указать причину.
Благодарю.
if (bmTuneVar::numDisparities_slider % 16 == 0) bmTuneVar::numDisparities_slider+ 16;
Ваша идея здесь состоит в том, чтобы увеличить numDisparities_slider на 16?
тогда должно быть
if (bmTuneVar::numDisparities_slider % 16 == 0) bmTuneVar::numDisparities_slider+=16;
Ну, я исправил это так.
сначала инициализировать numDisparities_slider
а также
numDisparities_maxValue
и установите это значение в bm и масштабируйте его с любым значением.
как ниже.
bm->setNumDisparities(numDisparities_slider * 16);
Надеюсь, что это помогает другим.
ура