So you said best software uses the simplest technique, what about this one; sort pieces from shortest to tallest, so they will be sorted as pawn -> king
simple eheh
Chess Scanner (iOS & Android)
So you said best software uses the simplest technique, what about this one; sort pieces from shortest to tallest, so they will be sorted as pawn -> king simple eheh
I said "the simplest and cleanest way", there's no mention of the "simplest technique"; frankly, "simplest technique" doesn't even make any sense.
In your example of sorting, the simplest and cleanest way would be to use an appropriate sorting routine from a library. For such few pieces a simple bubble-sort type n^2 comparison is appropriate. Small foot print in memory, storage, and processing.
Anyway, I did do an experiment and it is very doable. I was able to recognize chessboard pieces from pictures (have to be somewhat in-focus, I can also deal with more out-of-focus if I had wanted to, it isn't hard). Accuracy was 100% on my test book.
Here're my steps:
Read color image ->
convert to gray scale ->
uniform the intensity ->
convert to binary (I used Otsu automatic thresholding) ->
correct rotational error (I detect chessboard corners and perform perspective transform; without this step, my accuracy was about 95%) ->
match chessmen patterns (the pattern match uses a mask that covers the chessmen shape)
Using OpenCV, the entire code was about 200 lines.
I can easily add additional chessmen patterns from other books. Even without other book patterns, the program is able to recognize with about 80% accuracy with only this single book's pattern.
NOTE: The above won't work without 2 additional steps for computer screen images due to aliasing between the screen pixels and camera sensor pixels. There probably need to have some low pass filtering and image enhancement. Which isn't all that difficult either.
The above took about 4 hours of programming fun. Most of it was learning OpenCV. I might just add this chess photo -to-FEN feature to my app. It does seem useful.
so "simplest way" and "simplest technique" mean different? whatever.
To those ignorant of computer programming <-- definitely seems so based on you.
The point is, the whole chess piece recognition is not hard to do. Definitely don't need AI overkill. Even if I were to program a general purpose chess piece classifier, it isn't hard at all. I can train it with lots of chess pieces and then it'll be static; no AI, no learning needed.
@gdzen You have no idea of computer programming and AI.
A lot of folks toss around AI because it is the hip term right now, so non-technical, non-computer people also use it. Go back 15 or 20 year, nobody dares say AI because it is just unhip; of course, that also prevents non-techies from saying this-and-that needs AI.
we are not talking about ai anymore, it was just a question. then i suggested you a way to do it, you both tried to use them to brag about your programming skills. you "assumed" that i dont know anything about programming, and called me ignorant.. actually you dont know anything about me. but it is easier this way, right. as i said "whatever"
I think you can export locations to different chess apps and from there you can share them, I've seen success using camscanner apk old version.
In this blog post, you can read (general approach and technical details) how Chessvision.ai scans chess diagrams from images and videos: https://blog.chessvision.ai/chessvision.ai/how-i-started-chessvision-ai/
This is used across many apps, including Chrome Extension, Android Scanner, iOS Scanner, interactive eBook Reader, Video Search and Watch
Disclaimer: I'm Pawel, creator of Chessvision.ai
I believe you can export locations to various chess programs and distribute them from there; I've had success doing this.
vidmate is the best application to download your favorite videos from social site especially YouTube in HD quality. https://apkarctic.com/vidmate-hd-video/
I personally prefer the ChessEye app. Chessvision.ai has this "Sign in with Google" nonsense. Why should I do that just to use a scanner? It's nothing but data collection gone mad.
WRT signing into Google, some pacakges uses Google backend for things (like if a map app or voice/speech/handwriting recognition), in order for the developer to not pay Google, the user maybe required to sign in (and use his own Google account).
WRT signing into Google, some pacakges uses Google backend for things (like if a map app or voice/speech/handwriting recognition), in order for the developer to not pay Google, the user maybe required to sign in (and use his own Google account).
Don't think so. The ChessEye scanner app works perfectly well without any need to sign in to Google. Whenever possible, we should choose apps which avoid the tentacles of that particulur octopus.
I went back to CM300 for DOS. It can also export as
Forsythe Board Position
I just thought of something.
I saw it in a book.
There are books with QR codes which links to the audio on YouTube.
Exercise cards with QR codes that link the demonstrations of the exercise on YouTube.
The trick is not to make a computer understand a human language.
The trick is to speak a computer language.
The FEN position can be QR coded.
That is an easy technological solution. Plus it gives old chess books new life.
On the more non-technological side.
Simplicity is best.
Put the pieces on the board yourself so you know where the pieces are and the relationships between them. It is not that much faster.
When I read a book, I play on a real chess board. It simulates the real playing conditions. In a real playing conditions, you don't have the luxury of a computer program to keep track of branches of what-ifs.
Nice, keep at what you are doing. It always help's for someone to make it helpful for a group of people that are on chess.com, depsite it being profitable or unprofitable.
Don't mind the cost if I wanted to use it, I am just glad it is made, for the sake of those who find it interesting and to give it a shot.