Я думаю, что эта проблема легче, чем вы думаете, при условии, что вы всегда сегментируете изображение вдоль (как представляется,) контурных линий.Вы хотите выбрать все точки, которые имеют значение больше, чем линия контура 1 и меньше, чем линия контура 2. Я не уверен, как вы указали линии контура, но команда выбора должна быть просто:
#% let laserData be the image data (it looks like it should
#% be 512x256, so I'll assume that)
highBound = mean(contour1points);
lowBound = mean(contour2points);
selectedData = laserData(laserData > lowBound & laserData < highBound);
Если, как оказалось, вы просто устанавливаете контуры на основе значения, тогда mean(contour1points)
может быть заменено пользовательским значением, используя функцию, чтобы получить значение пикселя под курсором, которое я не могувспомнить прямо сейчас.Если вы хотите определить многоугольник, проверьте функцию impoly
.