Supongamos que tengo una imagen con, digamos, un círculo y un cuadrado. ¿Hay alguna manera de encontrar el cuadrado dada la matriz de la imagen? (solo hay un cuadrado, y el tiempo no es realmente un problema). Gracias.Algoritmo para encontrar una forma cuadrada en una imagen?
Respuesta
Vamos a dividir todos los puntos en "iluminado" y "oscuro".
Busque puntos que estén iluminados, y los puntos arriba y abajo también estén iluminados. Es probable que sean parte de una ventaja.
De forma similar: si un punto (x, y) está iluminado y los puntos (x + 1, y), (x + 2, y) también están iluminados, pero (x-1, y) y (y-1 , y) son oscuros, y análogamente en la dirección Y, entonces es muy probable que hayas encontrado una esquina superior izquierda. Y así. De esta forma puedes encontrar las esquinas y luego encontrar el cuadrado a partir de ellas, parece ser un enfoque simple.
Si el cuadrado de la imagen es perfecto, verifique que haya un borde en la posición esperada. El pseudocódigo en la respuesta de Thejh debería funcionar bien.
Gracias, Gintautas. Perdón por preguntarte esto, pero ¿podrías ser un poco más formal? Algunas matemáticas, o pseudo-código tal vez? Tengo problemas para analizar la oración. Gracias. –
Sí, mi primera oración se rompió, lo siento. Fijación. –
He entendido mal tu pregunta, pensé que estabas buscando un rectángulo lleno en lugar de solo el contorno, como lo proporciona la herramienta "Rectángulo" de Paint. En este caso, la solución es mucho más simple. –
¿Algo como esto?
for (x,y of every black pixel) {
#those methods should return true if the lines length is more than one pixel
if (hasLineToRight(x,y)&&hasLineToBottom(x,y)) {
otherx=highestXOfLineToRight();
othery=highestYOfLineToBottom();
if (isLine(x,y,x,othery)&&isLine(x,y,otherx,y)) {
addBoxToList(x,y,otherx,othery);
}
}
}
Usted además probablemente quieren usar la caja con los más altos valores de anchura y altura.
¿Qué hay de flood filling comenzando en puntos al azar hasta que encuentre su rectángulo?
- 1. Algoritmo para encontrar una región pintada en un lienzo
- 2. PIL: Miniatura y terminar con una imagen cuadrada
- 3. Algoritmo para encontrar el siguiente número en una secuencia
- 4. Algoritmo para encontrar una subcadena común en N series
- 5. Algoritmo para encontrar referencias circulares en una hoja de cálculo
- 6. algoritmo para detectar un círculo en una imagen
- 7. ¿Qué es un algoritmo de rendimiento razonable para encontrar la parte más "interesante" de una imagen?
- 8. Algoritmo para encontrar rectángulos
- 9. Cómo encontrar una imagen dentro de otra imagen usando python
- 10. Algoritmo para encontrar puntos cercanos?
- 11. Encontrar la ubicación de rectángulos en una imagen con OpenCV
- 12. Encontrar Sub-Imágenes en una imagen
- 13. ¿Qué algoritmo usa Photoshop para desaturar una imagen?
- 14. Encontrar un algoritmo eficiente para una operación de matriz
- 15. Algoritmo para encontrar una 'ruta de expansión mínima'?
- 16. Algoritmo para encontrar grupos óptimos
- 17. Algoritmo para encontrar agregados elementos/retirados de una matriz
- 18. Encontrar una imagen pequeña en una más grande
- 19. Embalaje de datos de imágenes rectangulares en una textura cuadrada
- 20. ¿Tiene Qt una forma de encontrar el cuadro delimitador de una imagen?
- 21. Algoritmo para encontrar intersecciones entre polilíneas
- 22. ¿Cómo tomar una imagen cuadrada en iphone con avFoundation como en la aplicación de Instagram?
- 23. Algoritmo para encontrar subconjuntos comunes
- 24. Algoritmo para encontrar píxeles muertos en Javascript
- 25. Encontrar coordenadas de puntos en la frontera de una forma
- 26. Crear una ventana en qt con forma de una imagen
- 27. ¿Algoritmo más rápido para encontrar una cadena en una matriz de cadenas?
- 28. Encontrar una subimagen dentro de una imagen de Numpy
- 29. OpenCV algoritmo K-medias de funcionamiento en una imagen
- 30. ¿Cómo recorto una imagen basada en una forma irregular?
¿Es un cuadrado perfecto, o "cuadrado"? –
Rectángulo, para ser precisos. Pero es bastante vainilla. Supongamos que se ha dibujado con la herramienta "Cuadrada" de MS Paint, y luego se guarda como gif. –
¿Está alineado el cuadrado con los ejes o gira? – thejh