Okay, the next speaker is Michele Tameni, which has a talk about
Ko-fi or Ko-fi Osm. Improved opposite map are received at a time. So check in an art shop on
the map with the receipt. So the stage use. Hello everyone and thank you to be here. It's really
nice to be here like after attending like 10 edition of FOSM. So it's my first talk. It's
really great to be here. So I want to talk to you today about a little project I started like
five months ago, I think. And it basically want to be a new different and hopefully easier way
to add place in particularly business place to open straight map. And to give you a little bit
of perspective. The usual process to insert a new place or a business into open street map usually
involved with the check if the place is already on open street maps, open them up and look for the
location or where you want to add the place. Gather all the information needed. So the name,
the position, the address, maybe the phone number, the website. And then open your preferred editor,
the website or you know, Osmond or something like that. Insert all the information, check if it's
correct and then save it. And it became easier over the time but it's anyway time consuming task.
And especially I found myself sometimes having problem found updated information about your
business like the phone number or the website. Sometimes you find incorrect information online.
So I think it's quite hard sometimes to insert a new place. And so I got this idea that I'll tell
you later how it's come. But to validate the idea, before coming to FOSM we took a little bit
longer way. We went to Zagreb with one of my friends to drink some beer for a serious purpose
obviously. And when you are in a new city that you don't know, you usually open them up and have
a look where the majority of pubs, restaurants or something like that, where they are. And when
you see something like that, you know that on that street maybe it's a good place to be or on the
other side of the city there is something else. But what you usually do is looking for restaurants,
pubs, bars and etc. So it's quite important for me having this kind of information on the map.
Open street map I think it's improved a lot over the last years, especially Europe maybe. But
sometimes it's lacking this information I think. So we went to Zagreb, we tried to find as many
bars as possible for this research. And what we found out is that there is so much more pubs and
drink in place than what we spot in the map at first time. So our question is how we can improve
this. Obviously we can do more travel like this one and then insert all the information that we
gather traveling. Fortunately there is so many volunteers around the world that do this kind
of stuff and insert all the kind of place that we nowadays we can found on open street map. But as
I told you before it's a time-consuming task and you have always to find the correct information
about the business you want to add. So what you can do, you can do the things that I already said
or do something like Bob does that is seated over there. I think he do a quite smart thing. He
collect all this hype that we get over our drinking nights. And after he check if the place where we
went is already on the map or not. And if it's not it's inserted in open street map. With all the
information already there you don't need to look everywhere because usually the receipt have the
business name, the address, the location, the numbers, sometimes the website. So I think it's
quite smart things to do something like this. Maybe it's not that smart that Bob usually do this
after too many years. That's another problem. And to avoid his mistakes, like type or something
like that, I think it could be interesting to try to automate the process and access the information
from the receipt. And basically the idea, so it's like to use a picture of your receipt and you get
all the information that you need to insert the place and eventually you insert the place already
if the place is not on the open street map. So copy or send, basically do these things,
extract the text from the receipt, try to tokenize and label the data that you can find,
check if the existing of the place is the place is already on the open street map. And if not,
maybe because it's not actually possible, you can insert it already on the open street map or at
least copy and paste all the information you need. And actually the project is quite small,
it's just a proof of concept. And I thought a little bit about the architecture of this
project and maybe I started to try to do a standalone app. But I think that maybe it's
better to have something that can be easily integrated in the other application. There is
like something like street complete or other projects that do a great job to improve and
make easy to people to contribute to open street map. So I think it can be really,
really interesting to maybe integrate a function like this in those apps. So I just
mocked up a small Python API, visit on fast API that expose an endpoint where you can just
upload an image. And then the software tried to understand what is on the site, label all the
data and just return it. Actually, the front end is just really, really small application that
show a small form and visualize the information that the mechanic will extract. As I said,
future integration for the editors, I think it will be the way to use this kind of function,
if it's probably to be interesting and useful and available. Or maybe it can be just a standalone
app or a PWA. I actually don't know. It's something open and I'm here to discuss it actually. So
how it works actually. The receivers are loaded to a server. I remove the exit data just to have
a little bit of privacy because it can be there like the location, the time where you went in a
place, and I think it's not something that you want to share. The image is a little bit
preprocessed for before the OCR. Actually, it's something really basic that I think it can be
improved really a lot. And there is OCR with Tesla OCR that work quite good, but I think it can be a
little bit better, maybe processing a little bit more on image before. Then I tried several way
to parse the data with Leapostal that actually I think is what I found the most reliable for this
task with SPACI. And maybe it could be interesting to train a custom model because I found some
open source model that can understand what our receiver and invoice say, but it's usually trained
about the product that you buy and find the price and the total and not the business name. So it
doesn't work really well actually. Then we can just look with an omination with the place it's
already on the OpenStatePAP or not. If we can find the exact name, I try a location search with
the Overpass API so I look at the address, have a look at all the business of that type. There is
around and show a list to the user to just make sure that the place is not there with a little
bit different name. So what can be done different or better I have in my to the list. Improved
the data section. As I said before, the OCR actually works good. I tried like the Google
Vision API that works much better, but I don't want to use it actually. So I think that maybe
with a little bit more preprocessing on image, all the data excited could be a little bit more
accurate. As I said the front end, actually it's a really, really small application that just shows
some information. It's maybe better to do on the client side all the stuff for privacy reasons. So
I just can read the text, keep it on my device and just upload or save the new place to OpenState
PAP choosing what information I want to share. Integration. So as I said, you set the place
directly from the app will be great or integrated it with some other editor. More safe to test and
improve because what we spot in the agreb, so our chip is not unusual actually, is that there is
not clear standard of obviously for a shift and can change a little bit from place to place. In
Italy almost they are all the same. We doesn't find this true for like a diagram. So maybe call it
more information about how the chip looks all around the world could be great. What we can do,
be done different because this is the step that I thought it's the easiest, but maybe like I said,
having a custom model that can label a little bit better, the information could be interesting at
least because sometimes you find not the name of the place on the receipt, but the name of the
business that is sometimes different or sometimes you find both. And actually the postal that I
use they get confused so you doesn't have a reasonable result over time. So why I don't
want is to find more pubs, more beer, more fun, help Bob to drink some more good beer,
and absolutely to improve OpenStreetMaps together and just having an easier way to add place and so
we can call it more information. So thank you, this is the website where you can find the
source code. I asked the temporary playground where you can upload your receipt to test and
that's it. I just want to know if you find this idea interesting, if it could be good to go on
with this project, if you have some suggestions. So I ask questions, it doesn't ask you to have
questions. So thank you.
Because maybe you haven't snapped the photo when you just went out from the place, the first
reason, and the second reason is for privacy, as I said before, but I think it will be great to
offer the users the possible to choose if you want to share information. It's much easier
because if you have the exit coordinates, you can just have a look in a really small area around
and just easily found if the place is already on OpenStreetMap or not and even be more accurate
when you insert it. So it's obviously a nice idea. I haven't done it just because sometimes like Bob
he doesn't do the insert right away, but the day after then go there. Okay, I repeat the question.
That's a nice idea. Yes.