Skip to content

manuelddahmen/empty3-library-mp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Utilisation principale

3D rendering

3D modeling

Data visualization

3D game development

Visual design

3D animation

Exemple

./gradlew FaceDetect Lancement de l'application Morph de Empty3

Commentaires sur la bibliothèque empty3-library-3d

Générateur de Films MPEG

(ce chapitre contient un détail de la bibliothèque empty3-library-mp, voir plus haut pour l'essentiel) Cette application permet de générer des fichiers vidéo MPEG à partir d'un fichier texte et de deux images en utilisant Google Cloud Functions.

Fonctionnalités

  • Téléchargement d'un fichier texte et de deux images via une requête HTTP POST
  • Génération d'un fichier vidéo MPEG basé sur ces entrées
  • Téléchargement automatique du fichier généré

Prérequis

  • Java SDK 22
  • Kotlin API 2.1
  • Google Cloud SDK (pour le déploiement)
  • Maven

Utilisation

Déploiement local

  1. Compilez le projet :

    mvn clean package
    
  2. Exécutez la fonction localement :

    mvn function:run
    
  3. Envoyez une requête avec les fichiers requis :

    curl -X POST http://localhost:8080 \
      -F "text=@chemin/vers/votre/fichier.txt" \
      -F "image1=@chemin/vers/votre/premiere_image.jpg" \
      -F "image2=@chemin/vers/votre/deuxieme_image.jpg" \
      --output film_genere.mpeg
    

Déploiement sur Google Cloud

  1. Déployez la fonction :

    gcloud functions deploy movie-generator \
      --entry-point=one.empty3.apps.facedetect.video.MovieGeneratorHttpFunction \
      --runtime=java22 \
      --trigger-http \
      --memory=512MB
    
  2. Utilisez l'URL fournie par Google Cloud pour envoyer vos requêtes.

Structure du code

  • MovieGenerator.java : Classe principale qui traite les fichiers d'entrée et génère le fichier MPEG
  • MovieGeneratorHttpFunction.java : Implémentation de l'interface HttpFunction qui gère les requêtes HTTP

Notes d'implémentation

La classe MovieGenerator actuelle contient une implémentation de base. Pour une utilisation en production, vous devrez :

  1. Implémenter la logique réelle de génération de vidéo dans la méthode generateMovie()
  2. Ajouter des validations supplémentaires pour les types de fichiers
  3. Optimiser la gestion de la mémoire pour les fichiers volumineux

Licence

Ce projet est sous licence Apache 2.0 - voir le fichier LICENSE pour plus de détails. Points forts:

  • Fonctionnalités riches: La bibliothèque offre un large éventail de fonctionnalités pour le rendu 3D, y compris la modélisation, le texturage et l'éclairage.
  • Facile à utiliser: La bibliothèque est conçue pour être facile à utiliser, avec une API simple et bien documentée.
  • Performances élevées: La bibliothèque est optimisée pour les performances et peut être utilisée pour créer des applications 3D fluides et réactives.
  • Open source: La bibliothèque est open source et gratuite à utiliser.

Points faibles:

  • Documentation limitée: La documentation de la bibliothèque est un peu limitée, ce qui peut rendre difficile l'apprentissage de l'utilisation de toutes ses fonctionnalités.
  • Manque de fonctionnalités avancées: La bibliothèque ne dispose pas de certaines fonctionnalités avancées que l'on peut trouver dans d'autres bibliothèques 3D, telles que le rendu par lancer de rayons et la simulation physique.

Exemples d'utilisation:

  • Création de jeux 3D: La bibliothèque peut être utilisée pour créer des jeux 3D simples et complexes.
  • Modélisation 3D: La bibliothèque peut être utilisée pour créer des modèles 3D d'objets et de scènes.
  • Visualisation de données: La bibliothèque peut être utilisée pour visualiser des données 3D, telles que des nuages de points et des maillages.

Conclusion:

empty3-library-3d est une bibliothèque 3D puissante et flexible qui peut être utilisée pour créer une variété d'applications. La bibliothèque est facile à utiliser et offre de bonnes performances. Cependant, la documentation est un peu limitée et la bibliothèque manque de certaines fonctionnalités avancées.

En plus des points forts et des points faibles mentionnés ci-dessus, voici quelques commentaires supplémentaires sur la bibliothèque :

  • Filtres d'images: La bibliothèque propose une variété de filtres d'images, ce qui peut être utile pour le traitement d'images et la vision par ordinateur.
  • Formats et classes d'images: La bibliothèque prend en charge plusieurs formats d'images courants, ainsi que des classes pour représenter et manipuler des images.
  • Détecteur de contours: La bibliothèque inclut un détecteur de contours, qui peut être utile pour la segmentation d'images et la reconnaissance d'objets.
  • Approche paramétrique: La bibliothèque se distingue par son approche paramétrique pour la modélisation 3D, permettant de créer des formes complexes à partir d'équations mathématiques.
  • Intégration multimédia: La prise en charge de textures vidéo et algorithmiques offre des possibilités créatives pour l'animation et les effets visuels.
  • Compatibilité Java/Kotlin: Conçue pour s'intégrer parfaitement dans l'écosystème Java/Kotlin, facilitant son adoption dans des projets existants.
  • Adapté à l'enseignement: La clarté de l'architecture et l'approche mathématique en font un excellent outil pédagogique pour l'apprentissage de la 3D.
  • Flexibilité des rendus: Possibilité de personnaliser les pipelines de rendu selon les besoins spécifiques du projet.
  • Extension possible: L'architecture modulaire permet d'ajouter de nouvelles fonctionnalités ou d'interfacer avec d'autres bibliothèques.
  • Focus sur le traitement d'images: L'accent mis sur les filtres et le traitement d'images offre des capacités avancées pour la reconnaissance et la transformation visuelle.

Dans l'ensemble, empty3-library-3d est une bibliothèque 3D prometteuse avec un large éventail de fonctionnalités. La bibliothèque est encore en développement, mais elle a le potentiel de devenir une ressource précieuse pour les développeurs 3D.

Avantages pour les développeurs

  • Courbe d'apprentissage accessible: Les concepts fondamentaux peuvent être maîtrisés rapidement, permettant de créer des applications 3D sans expertise préalable approfondie.
  • Prototypage rapide: Idéal pour tester rapidement des concepts et idées en 3D avant de passer à des outils plus spécialisés.
  • Environnement familier: Pour les développeurs Java/Kotlin, l'intégration se fait naturellement dans le workflow existant.
  • Solution légère: Ne nécessite pas de ressources système importantes comme certains moteurs 3D commerciaux.
  • Contrôle du code source: Étant open source, les développeurs peuvent examiner, modifier et étendre les fonctionnalités selon leurs besoins.
  • Applications multiplateformes: Fonctionne sur toutes les plateformes supportant la JVM (Windows, macOS, Linux, Android).
  • Intégration backend-frontend: Peut servir de pont entre le traitement côté serveur et l'affichage côté client.

Domaines d'application recommandés

  • Éducation et recherche: Parfait pour l'enseignement des concepts 3D et les projets de recherche académique.
  • Visualisation scientifique: Représentation graphique de données scientifiques complexes.
  • Prototypes d'applications: Développement rapide de MVP (Minimum Viable Product) pour applications 3D.
  • Projets artistiques: Création d'œuvres numériques interactives et d'installations artistiques.
  • Outils internes: Développement d'outils de visualisation personnalisés pour usage interne en entreprise.

N'hésitez pas à me poser des questions sur la bibliothèque empty3-library-3d.

Sure, here is the translation of the text you provided:

Review of the empty3-library-3d library

Strengths:

  • Rich features: The library offers a wide range of features for 3D rendering, including modeling, texturing, and lighting.
  • Easy to use: The library is designed to be easy to use, with a simple and well-documented API.
  • High performance: The library is optimized for performance and can be used to create smooth and responsive 3D applications.
  • Open source: The library is open source and free to use.

Weaknesses:

  • Limited documentation: The library's documentation is a bit limited, which can make it difficult to learn how to use all of its features.
  • Lack of advanced features: The library does not have some advanced features that can be found in other 3D libraries, such as ray tracing and physics simulation.

Use cases:

  • 3D game development: The library can be used to create simple and complex 3D games.
  • 3D modeling: The library can be used to create 3D models of objects and scenes.
  • Data visualization: The library can be used to visualize 3D data, such as point clouds and meshes.

Conclusion:

empty3-library-3d is a powerful and flexible 3D library that can be used to create a variety of applications. The library is easy to use and offers good performance. However, the documentation is a bit limited and the library lacks some advanced features.

In addition to the strengths and weaknesses mentioned above, here are some additional comments on the library:

  • Image filters: The library offers a variety of image filters, which can be useful for image processing and computer vision.
  • Image formats and classes: The library supports several common image formats, as well as classes for representing and manipulating images.
  • Edge detector: The library includes an edge detector, which can be useful for image segmentation and object recognition.

Overall, empty3-library-3d is a promising 3D library with a wide range of features. The library is still under development, but it has the potential to become a valuable resource for 3D developers.

Please feel free to ask me any questions you have about the empty3-library-3d library.

empty3-library-3d

empty3.app Moteur de rendu et éléments de conception.

Guide de démarrage rapide

  1. Installation: Ajoutez la dépendance à votre projet (Maven/Gradle)
  2. Création d'une scène simple:
    // Créer une scène
    Scene scene = new Scene();
    
    // Ajouter des objets (exemple: sphère)
    Sphere sphere = new Sphere(new Point3D(0, 0, 0), 1.0);
    sphere.texture(new ColorTexture(Color.RED));
    scene.add(sphere);
    
    // Configurer la caméra
    Camera camera = new Camera(new Point3D(0, 0, -5), new Point3D(0, 0, 0));
    scene.cameraActive(camera);
    
    // Rendu et affichage
    ZBufferImpl buffer = new ZBufferImpl(800, 600);
    buffer.scene(scene);
    buffer.draw();
  3. Exécution: Lancez votre application et visualisez le résultat

Exemples simples inclus

  • Génération de formes paramétriques
  • Application de filtres d'images
  • Animation d'objets 3D
  • Intégration avec l'interface utilisateur

Formes:

surfaces:

Surfaces paramétrées Cube, sphère, rectangle, extrusion, cylindre courbe

courbes

Courbe paramétrées Ligne, cercle, rectangle

Textures: couleur, image, vidéo, algorithmique

Build avec Gradle, différentes interfaces utilisateurs sont proposées

Feature

https://drive.google.com/folderview?id=10CXWU2JPVsNMbHrAssxN23KzizzNkvHg Documentation utilisée.

Filtres d'images

Filtres : flou Gauss, Gradient X, Y, outter dot product. SobelX, SobelY. localextrema, histogramme des densites, harris matrix c(x,y)

Formats et classes d'images.

  • Image Int Rgb (sans rgb)
  • format jpg en sortie
  • PixM components matrix of pictures. color component based.
  • M3 components
    • matrix (columnsIn, linesIn) internal matrix at x, y
  • conversion to Image, minMaxIncr normalize linear
  • gradient. dx, dy, phase atan dy/dy atan dx/dy
  • detecteur de contours

maven use with pom.xml dependency

<dependency>
    <groupId>one.empty3</groupId>
    <artifactId>empty3-library-3d</artifactId>
    <version>2024-</version>
</dependency>

En développement. Ambitions.

La conception de features 2d 3d.

file : ./settings.properties

username=user98
password=ghhyvj
host=ftp.example.net
port=21
directory=/myimages/selection/input
classname=one.empty3.feature.Transform1,one.empty3.feature.Histogram2,one.empty3.feature.GradProcess

Feature extraction, classification

Voici un exemple de run: Run class: one.empty3.Run Args : "originalHarris_PasteBlank" settings.properties

image image

Filters, face mask, image resize

une application Android : image feature editor image

Screenshot_20230701_095233

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published