Processeur DNG – faire ressortir le meilleur de votre appareil photo

DNG Processor – Bring out the best in your camera

Avant d’acquérir un smartphone pliable, il faut absolument voir les différents appareils disponibles sur le marché. Lequel, permettra vraiment de regarder les jokes tous les jours de manière gréable ?

# DNG processeur jamais depuis 2017 j’ai fantasmé sur faire ma propre application appareil photo. J’ai voulu donner aux gens de meilleures images avec le téléphone qu’ils avaient et corriger les problèmes qui introduisent des équipementiers. En relâchant le 5 OnePlus avec des points dans ses images et un effet aquarelle, je suis devenu désireux de montrer au monde que je pouvais faire mieux. Arrière puis j’ai commencé à travailler sur une application appelée « Nuit caméra », qui m’a fait découvrir la caméra API sur Android. Il y a, cependant, des problèmes à cette API qui ne pourraient pas être surmontés. Pour les réparer, j’aurais besoin accès secret codes OEM. Certains souvenez peut-être quand j’ai sorti quelques versions moitié brisé de nuit caméra pour tester le comportement de l’API sur les différents téléphones. Il ressemblait à une voie sans issue, mais j’ai exploré les possibilités restantes.

Un jour je suis tombé sur un code ancien et oublié de Suite de tests de compatibilité AFST, où ils ont comparé les RAW de l’appareil avec l’image JPEG correspondante pour vérifier leur similitude. J’ai implémenté ce code en caméra nocturne en 2018 de printemps, et ce fut le début de réels progrès, suivie d’un grand nombre de tests, où je suis tombé sur deux limites dures. Un, ce traitement de code écrit en Renderscript par Google RAW était si lent qu’il serait inutilisable à exécuter lors de l’utilisation d’une application de caméra. Deux, applications de tierce partie caméra encore ont beaucoup de bugs à cause des problèmes d’API, même lorsque vous demandez juste les données brutes de l’appareil. À ce moment-là, j’ai abandonné et laissé tomber le projet de faire une application caméra au total.

Quelques mois plus tard, j’ai eu une idée nouvelle. Je pourrais utiliser les images brutes enregistrées par l’application appareil photo natif et traiter ceux dans le fond, bien que lentement. C’est comment « Processeur de DNG » naquit (DNG est l’extension de fichier utilisée par les images RAW). Le premier défi a été d’apprendre à analyser un fichier DNG et extraire l’information brute. Vous attendez que Android a un support intégré pour cela, mais j’ai dû écrire le code qui lit manuellement octet par octet. Une fois cela fait, j’ai le joint à la RAW ancien code utilisé en caméra nocturne de traitement. Il a fallu 20 secondes de travail intensif de CPU pour traiter une image unique et le résultat ressemblait terriblement bruyant, mais je recevais quelque part. Puis j’ai passé de temps à apprendre sur la façon de faire une image « allure ». Cependant, je ne pouvais pas trouver un moyen de contourner le runtime inutilisable du lent et une fois de plus mis le projet en attente.

Maintenant, il est de retour. La moitié l’an dernier, j’ai appris à utiliser OpenGL et j’ai eu un cours universitaire sur le traitement de l’image, qui est venu en pratiques. J’ai réécrit le pipeline de traitement en langage de Shader de GL, et qui a amené l’exécution jusqu’à un 1,5 s incroyable sur mon OnePlus 3 T. Sur un téléphone plus modern comme le 6 OnePlus, j’ai entendu des rapports qu’il faut moins d’une demi-seconde. Enfin, beaucoup de tuning a été fait à l’aide d’échantillons de la OnePlus 3, 5 et 6. Artefacts ont été retirés, réduction du bruit a été améliorée, courbes qui rendre le résultat plus croquant et coloré ont été mis au point pour toutes les situations.

Comme tous mes apps, ce soft est entièrement gratuit, sans in-app achats ou des publicités. J’ai même ajouté une licence GPLv3, j’espère que plus de gens contribueront à l’avenir !

## Comment fonctionne ce soft ?

Il attend de nouvelles images RAW saisies à l’aide d’une application d’appareil photo pris en charge et puis leur traite en arrière-plan. Il fait ceci en utilisant la puissance de l’unité graphique de votre téléphone jusqu’à quelques secondes. Les résultats ont plus de détails, d’une plage dynamique plus élevée et peuvent améliorer au fil du temps lorsque l’application est mise à jour. Vous pouvez choisir dans quel dossier sur votre téléphone les images résultantes sont placés. Par défaut, c’est/fondu /.

Pour faire ce traitement en arrière-plan fonctionne, liste blanche de l’app dans votre liste d’optimisation batterie. Ceci est particulièrement important sur les appareils OnePlus, que je sache que ne pas cela cassera le traitement automatique sur OnePlus 5 et 5 T.

## Pourquoi ne pas utiliser Google caméra ?

Il y a deux raisons pourquoi en utilisant cette application pourrait être préférable à l’aide de la caméra de Google. La première raison est que les ports tous ont leurs propres bugs et les kinks, tandis que l’app caméra inclus généralement sur le périphérique fonctionne bien dans n’importe quelle situation. Si quelque chose ne va pas mal en DNG processeur, le fichier RAW reste, donc votre coup n’est jamais perdu. La deuxième raison est que ce soft est entièrement open source et peut s’améliorer au fil du temps grâce à un effort de la communauté. Personnes avec expérience de traitement d’image pourrait jeter un oeil sur le code et contribuer, puisqu’il n’y a aucun obscurcissement comme dans Google caméra.

# Effectue ce travail sur mon appareil ?

Jusqu’à présent, l’app a été testé sur un grand nombre de périphériques. L’exigence principale est que vous devez être en mesure de prendre une image RAW. Votre application de caméra par défaut doit prendre en charge ce soit votre téléphone a besoin de soutien de Camera2/HAL3. Si vous avez Camera2/HAL3 support, vous pouvez télécharger OpenCamera et permettre à RAW. Pour les appareils Samsung et OnePlus, je recommande fortement à l’aide de l’application stock appareil photo au format RAW au lieu de cela, car elle fournit une meilleure expérience que OpenCamera.

** Les dispositifs qui ont été testés et fonctionnent hors de la boîte ** * OnePlus 6, 6 t, 5, 5 t, 3, 3 t * Samsung Galaxy S10, S7, Note 9 (Exynos) * romaric Poco F1 ** dispositifs qui fonctionnent après avoir activé Camera2/HAL3 à l’aide de racine ** * Moto G6, G5 + G4 + * Redmi Note 5, 4 * Lenovo ZUK Z2 , Z2 Plus * ASUS Zenfone Max Pro M1 * Wiko U Feel premier # résultats tangibles les plus grandes améliorations seront visibles sur OnePlus périphériques, en particulier le OnePlus 5(T). Cela corrige l’effet « aquarelle » et aussi ne souffre pas le problème de points caméra de Google. Pour d’autres appareils, il peut compenser plus ou une sous-saturation, et vous pouvez l’affiner en ajustant les paramètres de saturation (comme peut être vu dans le magasin de jeu captures d’écran).

# Liens () (https://play.google.com/store/apps/details?id=amirz.dngprocessor)

[Play Store Download](https://github.com/amirzaidi/DNGProcessor)

[GitHub Sources](https://drive.google.com/open?id=1vCdjNCKu2GnEVwHnuQ3LkQkPnNZNQSj0)

[Camera Samples] [More Information]https://docs.Google.com/document/d/1-LJc19G–42Ye-H0hd6QLJMb93zfzuWUy87GIPshLBE/Edit?USP=sharing)


View Reddit by AmirZ

40 réflexions au sujet de “Processeur DNG – faire ressortir le meilleur de votre appareil photo”

  1. Important note I forgot to add: Google Camera RAWs « work » if you turn off compression, but it’s not worth using that. You’d be better off sticking with the Google Camera JPEGs.

  2. First of all, thanks for your work on this app. Since it’s open source, maybe it could be added to F-Droid? Most users probably use custom ROMs, which usually have bad camera quality, so it might be useful for them.

    I tested it on my OP3 and it works as I expected. Quality is better than stock, and that’s good, but just like most camera apps, it can’t compete with Google Camera when it comes to dynamic range.

    If I point my phone at a bright window with Google Camera, I can see both the inside and outside of the room. With DNG Processor (and stock camera app), usually the room is dark and only the window looks right. GCam photos look more like what I can see with my eyes.

    I would say that this is an improvement for phones without a good Google Camera version or for users that are happy with the stock camera app but would like to have photos with better details.

  3. [Did a quick test with my Snapdragon Galaxy S9 here](https://imgur.com/gallery/CKKjfwD) and I noticed a few things: the DNG Processor doesn’t have as much dynamic range as the Samsung camera, which is expected because it doesn’t have the multiple shot stacking HDR. Also, the colors (especially the sky) seem to be oversaturated. But, on a positive note the DNG Processor has much more detail when zooming in on the photos and that fixes one of the biggest issues with Samsung which is the aggressive noise reduction that makes photos look soft.

  4. Exynos S10+ here, amazing contrast improvement, the amount of detail it got when compared to the stock DNG file is insane. best to you my dude. I might buy you a coffee through donations too☺️👍

  5. Note to Samsung peeps on OneUI: Samsung disabled saving RAW images in any mode but Pro – so if you’re using the default Photo mode, this app WON’T be able to pick up what you just shot, because there won’t be a RAW file! You have to use the Pro mode for it to save RAW images.

  6. I get a white dotted bar on the right side of the pictures I decode from my Pixel 2XL. The rest of the picture is black.
    This might be because the Pixels create DNGs with HDR tho. Still it sounds like you learned a lot and I like the idea! So good job!

  7. Interesting

    I got it to work using OpenCamera but not the GCamMod I have on my mi Mix 2s

    The results were, rather grainy but wow the detail it got. That amazed me.

    Great job!!!!

    So, I decided to compare selfies, it being a 5mp front camera.

    Wow. I always thought the front camera was horrendous on this phone, but these results are AMAZING

  8. I have a question: I own a Moto G6 and I’m able to capture DNG photos with OpenCamera, Footej Camera, Camera FV-5 etc. and without root. Isn’t Camera2 API already available?

  9. On my LG V10(cousin of LG G4) with S808 the background processing takes 5 seconds or so. My phone is completely stock, OpenCamera works fine. Note that the stock camera’s RAW files does not work. I had to use OpenCamera.

    The stock app [JPEG](https://i.imgur.com/wSF8bKi.jpg) was shot at ISO 800 @ 1/8s of a second. The [processed](https://i.imgur.com/kpaTQ6e.jpg) RAW file from OpenCamera was at ISO 800 @1/10s of a second. I used ISO 800 instead of ISO 50 to see how it handled noise :-). I can definitely upload the uncompressed pictures if needed.

    I used stock settings for DNG processor and I noticed that the purple hues are definitely outta whack, the stock app was more accurate. Of course that’s tuneable in the app settings. On the other hand though, the yellows from DNG processor was more accurate. In terms of detail retention, DNG processor wins again. Also check out the weird artifacts on the green highlighter between the too.

    I like the app overall, just wish i had better subjects to shoot. Everything outside is currently dead. 🙂

  10. Doesn’t really benefit when google cam works on my phone, but really interesting thing to try and experiment with. And your story about how did you came to this is really interesting too. Thank you for your work!

  11. My thoughts on OP5T:

    1. There’s a bug, I got some black dots in a photo with blown out highlights with your app (photos below)

    2. Gives a pretty natural look. Basically the raw photo, but not completely flat

    3. Lightroom HDR camera gives by FAR the biggest dynamic range, but you’ll have dots on 5T because it doesn’t work with the dot fix module. Also takes longer to process than your app.

    4. Gcam is less natural, but it has better dynamic range, is better in low light and is sharper (maybe a bit oversharpened, but you can tune that, I just chose to have that look).

    [Link to images](https://imgur.com/a/cUpHn1o) (uploaded from phone, so I hope it didn’t reduce the resolution)

  12. I’ll test this later since the Play Store version say my device is incompatible. Will try sideloading the apk and test it. I have a gcam port install on my phone and it’s my main camera app right now since the stock app is shit.

  13. Would Love to try it on my Mi9. But I cant shoot in raw with the Stock Rom.

    Edit:
    My fault – found the option in Open camera. Will try out your settings. Thank you.

  14. Works on my Mate 10 Pro on Android Oreo. Results are worse than my stock app and much worse than Gcam.

    Still, good job with this! I’ll try it out in other conditions.

  15. [Images taken with Snap Camera, device is Honor 8 Lite with Descendant Android Pie custom ROM](https://i.imgur.com/eW1BL0E.jpg)

    Imgur compresses their files, so keep that in mind.

    Looks like your app removes the Huawei « watercolor effect » processing as well. Overall, the picture processed using your app is darker but also more detailed. The only problem is that it makes your device laggy when processing. Other than that, I’d say it works!

Les commentaires sont fermés.