Plataforma de análisis de desniveles con IA
Un sistema inteligente que analiza desniveles en pisos a partir de una foto, simula la instalación de cerámica, y planifica con precisión la nivelación.
Nivelao combina tecnologías avanzadas para ofrecer una solución completa al problema de desniveles en pisos.
Utiliza modelos avanzados de visión por computadora para detectar desniveles sin referencias manuales.
Genera una grilla visual de colores tipo "pintura por número" para guiar el proceso de nivelación.
Muestra un modelo 3D interactivo del piso con perspectiva realista para mejor comprensión.
Simula la colocación de cerámicas de diferentes tamaños respetando los desniveles detectados.
Calcula automáticamente la cantidad de material necesario para nivelar el piso según las alturas.
Exporta los resultados a formatos profesionales como DXF, STL o PDF para uso técnico.
Nivelao utiliza una arquitectura modular basada en microservicios para escalar de forma independiente cada componente según la demanda.
Interfaz de usuario, carga de imágenes, visualizaciones y simulador de cerámica.
Procesamiento de lógica, control de flujos, usuarios e informes.
Procesamiento de imágenes y análisis de profundidad con modelos pre-entrenados.
Almacenamiento de usuarios, proyectos, imágenes y configuraciones.
El sistema está diseñado para desplegarse como contenedores Docker independientes, permitiendo escalabilidad horizontal y una arquitectura serverless.
Docker Compose con hot-reload para todos los servicios
Render.com con despliegue automático desde GitHub
Kubernetes en proveedores cloud o bare-metal
El proceso completo de Nivelao desde la captura de la imagen hasta la generación del informe final se divide en estos pasos:
El usuario carga una fotografía del piso desde su dispositivo móvil o computadora.
JPG, PNG, HEIC
1080p o superior
POST /api/v1/projects/new-image
El modelo de IA MiDaS analiza la imagen y genera un mapa de profundidad detallado sin referencias manuales.
Monocular depth estimation basado en redes neuronales convolucionales
El sistema identifica automáticamente el punto más alto y más bajo del piso, calculando las diferencias de altura.
Referencia para nivelación
Mayor diferencia a nivelar
dif_altura = punto_bajo - punto_alto
El usuario configura los parámetros del proyecto: tipo de cerámica (ej. 45×45cm) o altura de mezcla deseada en el punto más alto.
El sistema genera un informe detallado con el análisis completo, cálculo de costos de materiales y mano de obra, y una cotización profesional descargable.
Nivelao está construido con tecnologías open source modernas, enfocándose en rendimiento, accesibilidad y escalabilidad.
import torch
from transformers import AutoImageProcessor, AutoModelForDepthEstimation
class DepthAnalyzer:
def __init__(self):
self.processor = AutoImageProcessor.from_pretrained("Intel/dpt-large")
self.model = AutoModelForDepthEstimation.from_pretrained("Intel/dpt-large")
def analyze_image(self, image):
# Preprocesar imagen
inputs = self.processor(images=image, return_tensors="pt")
# Predecir mapa de profundidad
with torch.no_grad():
outputs = self.model(**inputs)
predicted_depth = outputs.predicted_depth
# Normalizar valores
depth_map = torch.nn.functional.interpolate(
predicted_depth.unsqueeze(1),
size=image.size[::-1],
mode="bicubic",
align_corners=False,
)
return depth_map.squeeze().numpy()
El modelo MiDaS estima la profundidad relativa a partir de una sola imagen mediante una red neuronal convolucional, sin requerir calibración de cámara o imágenes estéreo.
Nivelao expone una API RESTful completa que permite integrar sus funcionalidades en otros sistemas o desarrollar aplicaciones personalizadas.
Crea un nuevo proyecto de análisis de nivelación.
{
"name": "Proyecto Casa 123",
"description": "Nivelación para sala principal",
"client_info": {
"name": "Juan Pérez",
"email": "juan@example.com",
"phone": "+1234567890"
}
}
{
"project_id": "proj_8f9g2h3j4k",
"name": "Proyecto Casa 123",
"created_at": "2023-06-15T14:32:21Z",
"status": "created",
"upload_url": "https://api.nivelao.com/upload/proj_8f9g2h3j4k"
}
Sube una imagen para análisis de nivelación en un proyecto existente.
# Multipart form data
Content-Type: multipart/form-data
image: (binary)
type: "floor" # Tipo de imagen: floor, reference, result
{
"image_id": "img_1a2b3c4d5e",
"project_id": "proj_8f9g2h3j4k",
"status": "processing",
"estimated_completion": "2023-06-15T14:33:21Z",
"analysis_url": "https://api.nivelao.com/projects/proj_8f9g2h3j4k/analysis"
}
Obtiene los resultados del análisis de nivelación para un proyecto.
{
"project_id": "proj_8f9g2h3j4k",
"status": "completed",
"analysis": {
"highest_point": {
"x": 245,
"y": 182,
"value": 0.95
},
"lowest_point": {
"x": 532,
"y": 328,
"value": 0.23
},
"max_difference_cm": 3.8,
"avg_difference_cm": 1.7,
"grid": {
"rows": 10,
"cols": 10,
"cell_values": [...], // Array 2D con valores de altura relativa
"cell_absolute_cm": [...], // Array 2D con valores en cm de llenado
"cell_colors": [...] // Array 2D con códigos hexadecimales para visualización
}
},
"materials": {
"area_m2": 24.5,
"volume_leveling_m3": 0.42,
"cement_bags": 12,
"sand_m3": 0.25,
"estimated_cost": 185.50,
"labor_hours": 8
},
"urls": {
"depth_map": "https://api.nivelao.com/projects/proj_8f9g2h3j4k/depth_map.png",
"color_map": "https://api.nivelao.com/projects/proj_8f9g2h3j4k/color_map.png",
"report_pdf": "https://api.nivelao.com/projects/proj_8f9g2h3j4k/report.pdf",
"dxf_export": "https://api.nivelao.com/projects/proj_8f9g2h3j4k/export.dxf"
}
}
Únete al equipo de desarrollo de Nivelao y contribuye a revolucionar la industria de la construcción con IA y análisis visual.