Выделение пикселей в определенной области изображения в R

#r #image-processing #pixel #raster

#r #обработка изображений #пиксель #растровый

Вопрос:

У меня есть изображение с черным фоном и множеством белых пятен повсюду. Мне просто нужно изучить белый пиксель в центральной области. Эта исследуемая область представляет собой прямоугольник, где каждый край находится на расстоянии 50 пикселей от краев изображения.

Итак, я хотел бы выбрать белые пиксели внутри этой области. Я определил 4 угла (xi, xf, yi и yf), но как выбрать белый пиксель в исследуемой области?

 library(EBImage)
library(ggplot2)
image <- readImage('C:/Users/PC/Desktop/Cluster/Test.png')
display(image , method = "raster")

# definition of the 4 corner of the selection box
tolerance <- 50
xi <- 0   tolerance
xf <- dim(image )[1] - tolerance
yi <- 0   tolerance
yf <- dim(image )[2] - tolerance
  

введите описание изображения здесь

Комментарии:

1. Не могли бы вы уточнить свой вопрос? Например, что вы подразумеваете под выделением? Что вы хотите сделать с этим выделением? Вы хотите обработать эти белые пиксели целиком или в виде отдельных участков?

2. Лоран, твой вопрос все еще не ясен. Из приведенного вами описания следует, что вы хотите обрезать изображение на 50 пикселей с каждой стороны. Правильно ли это?

3. Я бы предположил, что «изучение белых пикселей» может заключаться либо в изучении объектов, определенных белыми пикселями, в совокупности, либо по отдельности. Если это происходит по отдельности, функция bwlabel в EBImage выполняет двоичную сегментацию для извлечения связанных групп пикселей. Функция computeFeatures предоставляет доступ ко многим свойствам этих сегментированных объектов.