Discussion What is the most efficient way to crowdsource the 3D system coordinates

Has anyone calibrated the galaxy map camera using OpenCV? I'm currently making screenshots from different angles with everything filtered out and drawing a chessboard on the grid, then running the calibration on them. I'm however getting 1.08 pixel error RMS, which is not good for 3D reconstruction purposes.

Before I make more attempts, does anyone have a camera parameter YAML they have managed to generate with very low (~0.10 pixel) RMS?
 
Last edited:
Thanks, I will check those, I think they are not in EDDB yet.
EDDB has extended system data (coordinates and names based on EDSC) + stations as well as trade data
Take a look here: ROSS where you can edit the data manually (it also scrapes info from the EDDN stream)
Or at the API where you can download json files (updated every 24 hours)
I will endeavour to keep EDDB up-to-date with your files

That looks good. I'd support EDDB taking over from EDSC once you have a REST API for it. I think we need something with ongoing support. I've found more weirdness in the EDSC/TGC API: sometimes it seems to ignore distances, I think when it can't calculate coordinates from the distances. Fortunately it tells you which ones were accepted so you can just resubmit the ones it's ignored but it's still annoying. I have some ideas for doing things a bit differently to EDSC/TGC, particularly around automatically handling systems that have moved, but a direct replacement is probably the way to go initially.

I've just updated my files. Not too much in the way of new corrections but I've calculated coordinates for about 50 new systems that EDSC/TGC can't calculate the coordinates for.
 
I added some of the stars in S171. They require allot of refence stars so long out. Further out will be an even grater challenge to get coordinates with trillatation from the core systems.,
 
I added some of the stars in S171. They require allot of refence stars so long out. Further out will be an even grater challenge to get coordinates with trillatation from the core systems.,

Do we really need stars hundreds of light years from the Core systems? What purpose will those coordinates serve?
 
Other than the fact that they are there, explorers would probably want to plan their routes.

That is a nonsensical argument. The number of players travelling thousands of light years away from the core systems is small, and smaller still is the number going to the exact same location. Route plotting to 1,000 light years is easy enough in game and if you are planning to visit Sag A then you probably have a pretty good idea of how to get their without needing the coords in a 3rd party tool.
 
The majority of us do use the analytic solution as the starting point for the search. Although I think there were 1 or 2 that were using alternate approaches.



The "from all near 1/32ly grid points" comment was me (link for reference). As I described in that post, what you actually end up with is the intersection of multiple thin spherical shells, which give you a small 3d volume. When you perform trilateration, it will give you a point within that small intersection volume. But the real coordinate could be anywhere in that volume. So you end up needing to look around the area near the point you calculate with trilateration - or get more distances, which will (usually) decrease the size of the intersection volume.

What I do, instead of using a sphere/cube around the calculated point is to use a fairly sophisticated heuristic that tries to follow the contour of the error function around the candidate region. Where the error function is the sum of squares of distance errors to a given point, where the error is 0 if the calculated rounded distance exactly matches the rounded distance that the user input from the game. And the candidate region is the intersection volume, i.e. the region where the error function is 0.

And then I evaluate every grid point within that contour, to ensure that I've evaluated every grid point that might be in the candidate region. If I've only found 1 point that actually has an error of 0, then I know I've found the right coordinate, assuming no typos. Or if I've found multiple points with an error of 0, then it's impossible to determine which is the real coordinate, without more data.



To the best of my knowledge, the system coordinates do not change over time. The coordinates of a star within the system can and will change, but the coordinates of the system within the galaxy won't change.

As for typos, In the majority of cases, you will only 1 user that has input the distances for a given star pair. Especially for people (like me) who don't use a standard set of reference stars. So we can't rely on multiple entries of the same distance. Instead, we ensure that there are enough distances to guarantee that there is enough redundancy to detect at least, e.g. 2 typos distances.



That doesn't always work though. The problem is that you're sampling the error function in 1/32 LY increments, but the function can have much smaller features. The clearest example of this is when you're dealing with a star far away, using references that are bunched together in relation to that star, due to the long distance. In that case, you can end up with a a candidate region that is a very long, thin and narrow "needle" shape, which can be many 1/32LY units in length, but is narrow enough that it passes between almost all grid points except possibly 1 or 2 somewhere along it's length. In that case, trilateration will produce a point within the needle, but almost certainly not one that is grid-aligned. Searching the 27 nearby grid points won't give you any indication which direction you should look, because the error function in that case is related to how close the needle is to a given grid point, which is mostly unrelated to where the needle will actually encompass one of the grid points. And just because you find 1 grid point within the needle, you still have to search along the rest of the length of the needle, because it's possible it encompasses multiple grid points - in which case you need more data. i.e. the distance to another system which will let you discriminate between the 2 or more candidate points i.i.e. another thin spherical shell which only encompasses one of the candidate points.


Mathematically, that "needle" could be described as a system of inequalities, and then you could add an additional constraint to the system to enforce the 1/32LY grid thing. And then you could theoretically try to solve that system of inequalities, which would give you 0 or more points that satisfy the equations. However, that would be a very complex system of equations.. and my math skills aren't up to be able to solve an arbitrary system of inequalities of that form algorithmically. Although I'm a bit curious if something like mathematica or matlab could.

Thank you for the excellent and detailed answer.
 
I added some of the stars in S171. They require allot of refence stars so long out. Further out will be an even grater challenge to get coordinates with trillatation from the core systems.,

You don't need to use core systems as references. You should be able to get pretty good results just using local systems you've already trilatered.

If you like I can post a list of the most distant known stars to use as references.
 
That is a nonsensical argument. The number of players travelling thousands of light years away from the core systems is small, and smaller still is the number going to the exact same location. Route plotting to 1,000 light years is easy enough in game and if you are planning to visit Sag A then you probably have a pretty good idea of how to get their without needing the coords in a 3rd party tool.

We don't need any coordinate outside the game and can live with prices just in the game and not store it for a trading tools.

But just as for trading it can be more fun and effective to get a nice trade route with an external program its fun to have star maps for other uses.

I like to get coordinates for stars i have visited so i can see where i have been on a map. I don't map all but many named stars and special places. Its very fun to see in a map the trail after your journey.
Routing in game is great and has almost made external routing program redundant. But i use external routing sometimes still. At least i don't have ED running all time and with an external map i can check position and distance for something you reads about offline.
 
You don't need to use core systems as references. You should be able to get pretty good results just using local systems you've already trilatered.

If you like I can post a list of the most distant known stars to use as references.

YEs i know. I did trilatation of some of the S171 stars with reference from other local stars.

A good list of distant stars would be nice to test later. Maybe you could add them as a select-able preset on your entry,html page?
 
We don't need any coordinate outside the game and can live with prices just in the game and not store it for a trading tools.

But just as for trading it can be more fun and effective to get a nice trade route with an external program its fun to have star maps for other uses.

I like to get coordinates for stars i have visited so i can see where i have been on a map. I don't map all but many named stars and special places. Its very fun to see in a map the trail after your journey.
Routing in game is great and has almost made external routing program redundant. But i use external routing sometimes still. At least i don't have ED running all time and with an external map i can check position and distance for something you reads about offline.

I agree it useful for trading but I don't agree that it is useful outside the core inhabited systems.
 
Usefull or not. But its FUn and fun is the cause to why we do several things.

Playing Elite is not useful but its allot of fun so i do it allot :)
 
Do we really need stars hundreds of light years from the Core systems? What purpose will those coordinates serve?
It's better to have them and not need them than to need them and not have them. Any decent system using the co-ordinates isn't going to be impacted by a few hundred, or thousand, or ten thousand extra stars.
 
That is a nonsensical argument. The number of players travelling thousands of light years away from the core systems is small, and smaller still is the number going to the exact same location. Route plotting to 1,000 light years is easy enough in game and if you are planning to visit Sag A then you probably have a pretty good idea of how to get their without needing the coords in a 3rd party tool.

I'm really sorry I don't fit in your value structure, and that you think there is no business case for anything > 500 LY from Sol. For my part, I am interested in as much mapping as possible. The entire galaxy even. You are free to only use whatever little bit you are interested in.
 
That looks good. I'd support EDDB taking over from EDSC once you have a REST API for it. I think we need something with ongoing support. I've found more weirdness in the EDSC/TGC API: sometimes it seems to ignore distances, I think when it can't calculate coordinates from the distances. Fortunately it tells you which ones were accepted so you can just resubmit the ones it's ignored but it's still annoying. I have some ideas for doing things a bit differently to EDSC/TGC, particularly around automatically handling systems that have moved, but a direct replacement is probably the way to go initially.

I've just updated my files. Not too much in the way of new corrections but I've calculated coordinates for about 50 new systems that EDSC/TGC can't calculate the coordinates for.

I think you still need to delete this one:
{
"id": 24586,
"name": "Haremid",
"coord": [
-82.40625,
-18.875,
53.09375
],
"cr": 2,
"commandercreate": "Inhumierer",
"createdate": "2015-02-17 18:58:46",
"commanderupdate": "Inhumierer",
"updatedate": "2015-02-17 19:01:10"
},
 
I think you still need to delete this one:
{
"id": 24586,
"name": "Haremid",
"coord": [
-82.40625,
-18.875,
53.09375
],
"cr": 2,
"commandercreate": "Inhumierer",
"createdate": "2015-02-17 18:58:46",
"commanderupdate": "Inhumierer",
"updatedate": "2015-02-17 19:01:10"
},

Thanks, just spotted this myself. There were a couple of copies of Harermid with misspelt names. I've just updated the github repo.
 
YEs i know. I did trilatation of some of the S171 stars with reference from other local stars.

A good list of distant stars would be nice to test later. Maybe you could add them as a select-able preset on your entry,html page?

Good idea, I'll look into that.

The way I've been locating systems lately has been to visit a system, get the distances to my usual reference systems to fix a position, and then find all the local systems that are missing from TGC (using the nav panel) and add distances to those. Then I move on to the next system and repeat but also enter distances to all the newly entered systems from the previous system(s). After visiting 4 or 5 systems I've usually entered enough distances to get locations for the missing local systems around the first system. Over time the result is a series of system trilaterated using references to FD systems each surrounded by several systems trilaterated using fairly nearby non-FD references. It seems to work quite well. I think it's a little more efficient than visiting each system to get references and it lets me cover a volume pretty thoroughly.

- - - - - Additional Content Posted / Auto Merge - - - - -

I agree it useful for trading but I don't agree that it is useful outside the core inhabited systems.

How else can you plot the journeys you've taken?
 
Hi Guys! Been a while since I last posted in this thread. My apologies, as I wholeheartedly support this initiative. I've been lurking a bit and RL tends to keep me from getting too involved in posting most of the time.

Correct me if I'm wrong, but two issues (among others, of course) seem to have popped up from what I've browsed of the second half of the thread. 1. Torn Soul has disappeared, so EDSC may have to be re-written. 2. Dealing with the 'Needle Issue' where trilateration potentially becomes less accurate when dealing with systems a long way and/or in a relatively direct line from known stars.

IF EDSC does get re-written, could I suggest that when a user enters details for a new system, it does a quick calculation of the relative angles of the reference systems to the new target. It will know more or less where the new system is, and also if its coordinates are potentially incorrect (because the relative angles are low - ie the needle effect). It then suggests a set of alternative systems for the user to input distances to. Knowing the rough position of the target system is enough to identify known reference systems that will maximize the accuracy of the trilateration.

Sorry again, if I have missed something along these lines being discussed already or anything.

Cheers
Tuna :)
 
A good list of distant stars would be nice to test later. Maybe you could add them as a select-able preset on your entry,html page?

I wanted a more general solution (since any set of reference systems is going to fail for some cases) so I've added a suggestion function that should make it easier to locate distant systems. Once it has at least 3 distances it'll recommend up to 5 systems (the ones with the shortest names) that are the most effective at distinguishing between the candidates that have been identified so far. You can click on a name to add it to the table of distances. It seems to work pretty well for the systems I've tested it on. Let me know how it works for you - I'm not as far out as you are so I haven't been able to test it on any really tricky systems yet.
 
Hi Guys! Been a while since I last posted in this thread. My apologies, as I wholeheartedly support this initiative. I've been lurking a bit and RL tends to keep me from getting too involved in posting most of the time.

Correct me if I'm wrong, but two issues (among others, of course) seem to have popped up from what I've browsed of the second half of the thread. 1. Torn Soul has disappeared, so EDSC may have to be re-written. 2. Dealing with the 'Needle Issue' where trilateration potentially becomes less accurate when dealing with systems a long way and/or in a relatively direct line from known stars.

IF EDSC does get re-written, could I suggest that when a user enters details for a new system, it does a quick calculation of the relative angles of the reference systems to the new target. It will know more or less where the new system is, and also if its coordinates are potentially incorrect (because the relative angles are low - ie the needle effect). It then suggests a set of alternative systems for the user to input distances to. Knowing the rough position of the target system is enough to identify known reference systems that will maximize the accuracy of the trilateration.

Sorry again, if I have missed something along these lines being discussed already or anything.

Cheers
Tuna :)

Hi TunaMage! Yes, TornSoul seems to be have gone and I've run into several bugs/limitations in TGC which make a replacement desirable. I think everyone is holding off until we see what FD's API looks like though.

I've just added a suggestion function to my frontend app. The implementation is different in that rather than looking at the angles I calculate which reference system(s) would best differentiate the current candidate locations for the new system based on how many of the candidates generate different distances to each potential reference system. I haven't tested it all that much yet but it seems to work pretty well. I think this sort of functionality would be better left to the frontends rather than being in TGC though it could be an extension to the API. On a related note, one of the problems I think TGC has is that it doesn't really reject any data so if the client app is not doing a fair bit of sanity checking it's easy for bad data to get into the database (and it's basically impossible to get rid of once it's there - which is why I've been maintaining corrected versions). If we're going to put more smarts into the server I think we need to look at having TGC be stricter on what data it accepts and/or add support for admins who can clean up bad data.
 
Back
Top Bottom