2011-12-28 12 views
6

Me gustaría detectar y marcar el punto más brillante y el más oscuro en una imagen.Detección de puntos brillantes/oscuros en la pantalla del iPhone

Por ejemplo, estoy creando una sesión de AVCaptureSession y mostrando los cuadros de video en la pantalla usando AVCaptureVideoPreviewLayer. Ahora, en esta vista de salida de la cámara, me gustaría poder marcar los puntos más oscuros y más claros actuales.

An Example

tendría que leer los datos de píxel de la imagen? Si es así, ¿cómo puedo hacer eso?

Respuesta

3

En cualquier caso, debe leer los píxeles para detectar esto. Pero si whant para que sea rápido, no te leen todos los píxeles: leer sólo 1 de 100:

for (int x = 0; x < widgh-10; x+=10) { 
    for (int y = 0; y < height-10; y+=10) { 
     //Detect bright/dark points here 
    } 
} 

A continuación, puede leer píxeles alrededor de las que se encuentran, para que los resultados más correcto


aquí está la manera de obtener datos de píxeles: stackoverflow.com/questions/448125/... ... en el punto más brillante, rojo + verde + azul debe ser máximo (225 + 225 + 225 = 675 = 100% blanco). En el punto más oscuro, rojo + verde + azul debe tener un mínimo de bo (0 = 100% negro).

+1

- aquí está la manera de recopilar datos de píxeles: http://stackoverflow.com/questions/448125/how-to-get-pixel-data-from-a-uiimage-cocoa-touch-or-cgimage-core -graphics ... en el punto más brillante, 'rojo + verde + azul' debe ser máximo (225 + 225 + 225 = 675 = 100% blanco). En el punto más oscuro 'rojo + verde + azul' debe tener un mínimo de bo (0 = 100% negro). – SentineL

+0

Hola gracias hombre! Esto es exactamente lo que estaba buscando. – NSRover

Cuestiones relacionadas