Учитывая матрицу:
0 0 0 0 0 0 0 0
0 0 0 1 1 1 0 0
0 0 1 1 0 1 0 1
0 0 1 1 0 1 0 0
0 0 0 0 1 0 0 0
обратите внимание, что 1 в основном сгруппированы, за исключением 1 в 3-й строке, последний столбец
я хочу избавиться от лишних нулей и оставить только кластер единиц. Это то, что я пытаюсь сделать с изображением, поэтому обрезанный результат должен быть прямоугольным:
0 1 1 1
1 1 0 1
1 1 0 1
0 0 1 0
вышеупомянутая культура - самая маленькая прямоугольная культура, которую я могу сделать, чтобы покрыть наибольшее количество единиц.
Проблема, с которой я столкнулся сейчас, заключается в том, как сделать это в Matlab? Я не могу просто снять все 0, и я должен следить за выбросами 1. Каков наиболее эффективный метод решения этой проблемы?
Я могу думать только о том, чтобы вручную переходить строка за строкой, столбец за столбцом для поиска кластеров.