Maison >Java >javaDidacticiel >Comment pouvons-nous obtenir un flou bitmap rapide sous Android ?
Flou bitmap rapide pour Android
Sous Android, appliquer un filtre de flou aux images peut prendre beaucoup de temps, en particulier pour les grandes images . En effet, les méthodes traditionnelles impliquent de parcourir chaque pixel de l'image, ce qui peut être coûteux en termes de calcul.
Présentation d'un algorithme plus rapide
L'article présente un algorithme plus rapide que le approche traditionnelle de flou pixel par pixel. Cet algorithme, porté par Quasimondo, combine des éléments du flou de boîte et du flou gaussien.
L'algorithme fonctionne en créant une « pile mobile » de couleurs lorsqu'il parcourt l'image. Cette pile est mise à jour progressivement, avec une nouvelle couleur ajoutée sur le côté droit et la couleur la plus à gauche supprimée. Les couleurs restantes en haut de la pile sont ajustées en fonction de leur position sur la pile.
Détails d'implémentation
L'extrait de code Java fourni implémente l'algorithme dans Android. Il faut trois paramètres :
L'algorithme est divisé en deux boucles imbriquées, une pour les lignes et une pour les colonnes. Dans chaque boucle, l'algorithme calcule les sommes de couleurs et les met à jour en utilisant l'approche de la pile mobile.
Amélioration des performances
Cet algorithme améliore considérablement les performances de flou par rapport au pixel- méthodes par pixel. Pour une image de 640 x 480, l'algorithme d'origine mettait 30 secondes à flouter, tandis que cet algorithme réduit ce temps à environ 5 secondes.
Remarque
L'extrait de code inclut un correctif pour un problème ArrayIndexOutOfBoundsException qui peut survenir dans certains cas. Pour Android 11 et versions ultérieures, assurez-vous d'utiliser StrictMath.abs au lieu de Math.abs pour éviter l'exception.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!