# I've made a small step-by-step tutorial to using Flux for image recognition

**URL:** <https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261>\
**Category:** Machine Learning\
**Tags:** tutorials\
**Created:** [September 16, 2021, 1:47pm UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261 "2021-09-16T13:47:10Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Qfl3x](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/qfl3x/32/224645_2.png) [@Qfl3x](https://discourse.julialang.org/u/Qfl3x)\
**Post date:** [September 16, 2021, 1:47pm UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261/1 "2021-09-16T13:47:10Z")

</div>

I was trying to model a simple character recognition in Flux and almost lost my sanity due to the lack of tutorials and the ones that do exist were quite outdated. So after some head banging I’ve made a small tutorial to help those that might be coming from a different language/framework to using it.

The blog: [Image Recognition in Julia using Flux | Mohammed Ayoub Chettouh](https://qfl3x.github.io/julia/flux/ml/2021/09/15/Image-recognition-in-Julia-using-Flux.html)

The file:[https://github.com/Qfl3x/Arabic-Character-Recognition](https://github.com/Qfl3x/Arabic-Character-Recognition)

Feedback is appreciated!

---

<div class="post-metadata">

**Author:** ![ToucheSir](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/touchesir/32/14411_2.png) [@ToucheSir](https://discourse.julialang.org/u/ToucheSir)\
**Post date:** [September 17, 2021, 6:03am UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261/2 "2021-09-17T06:03:37Z")

</div>

Did you have a look through [Flux – Tutorials](https://fluxml.ai/tutorials.html)? [Flux – Simple ConvNet](https://fluxml.ai/tutorials/2021/02/07/convnet.html) in particular was created to have an up to date intro tutorial for character recognition on MNIST. Appreciate the blog post, of course!

---

<div class="post-metadata">

**Author:** ![Iulian.Cioarca](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/iulian.cioarca/32/30166_2.png) [@Iulian.Cioarca](https://discourse.julialang.org/u/Iulian.Cioarca)\
**Post date:** [September 17, 2021, 7:17am UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261/3 "2021-09-17T07:17:01Z")

</div>

I haven’t touched Flux in 2 years, what is the status of the tutorials in terms of more complex networks?  
I was interested in object detection and image segmentation. Any native Flux trainable networks like Fast R-CNN or YOLO?

---

<div class="post-metadata">

**Author:** ![Qfl3x](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/qfl3x/32/224645_2.png) [@Qfl3x](https://discourse.julialang.org/u/Qfl3x)\
**Post date:** [September 17, 2021, 9:41am UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261/4 "2021-09-17T09:41:27Z")

</div>

They had issue with DataLoader and its output. It turns out DataLoader got revamped lately.

For DataLoader, I got it mostly from[this model](https://github.com/FluxML/model-zoo/blob/master/vision/vgg_cifar10/vgg_cifar10.jl). That one was up to date.

---

<div class="post-metadata">

**Author:** ![Qfl3x](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/qfl3x/32/224645_2.png) [@Qfl3x](https://discourse.julialang.org/u/Qfl3x)\
**Post date:** [September 17, 2021, 9:44am UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261/5 "2021-09-17T09:44:06Z")

</div>

Maybe check [this](https://github.com/r3tex/ObjectDetector.jl).

---

<div class="post-metadata">

**Author:** ![Iulian.Cioarca](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/iulian.cioarca/32/30166_2.png) [@Iulian.Cioarca](https://discourse.julialang.org/u/Iulian.Cioarca)\
**Post date:** [September 17, 2021, 10:04am UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261/6 "2021-09-17T10:04:11Z")

</div>

As far as I know, it doesn’t support training:(

---

<div class="post-metadata">

**Author:** ![ToucheSir](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/touchesir/32/14411_2.png) [@ToucheSir](https://discourse.julialang.org/u/ToucheSir)\
**Post date:** [September 17, 2021, 4:09pm UTC](https://discourse.julialang.org/t/ive-made-a-small-step-by-step-tutorial-to-using-flux-for-image-recognition/68261/7 "2021-09-17T16:09:55Z")

</div>

The tutorial I linked (purposefully) doesn’t use `DataLoader`, were you perhaps thinking of a different one? It does need some changes to support datasets moving from `Flux.Data` to `MLDatasets`, but those are minor in comparison. As always, PRs are much appreciated because we have very limited bandwidth to work on these 🙂
