в трехмерной двоичной матрице, находя самую большую (по объему) подматрицу, которая имеет не менее X% истинных пикселей - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь найти общее решение проблемы в заголовке. Вот пример:

создайте трехмерную матрицу с большим объектом и некоторыми изменениями:

samp3D = false(200,200,200);
samp3D(10:90,10:90,10:90) = true; % create a large cube
samp3D(30:120,10:40,5:15) = true; % create x-axis projection
samp3D(80:100,40:150,40:90) = true; % create y-axis projection
samp3D(60:80,60:70,10:end) = true;samp3D(30:40,30:50,10:120) = true; % create z-axis projections
samp3D(60:90,120:150,120:150) = true;samp3D(120:150,10:40,120:150) = true; %add 2 small cubes
samp3D(randi(200*200*200,10000,1)) = true; %add some noise

Теперь, когда мы делим число ИСТИННЫХ индексов на количество всех индексов, мы получаем о 9,3%:

TruePercent = sum(samp3D(:))/numel(samp3D(:)); %TruePercent comes to about ~9.3%

Какая наибольшая (по объему) подматрица в 3D-матрице имеет TruePercent не менее 40%?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...