Spaces:
Sleeping
Sleeping
Download utils.py from msiklar/GCViennaSubway: direct link, hf CLI and curl.
- Browser
- Download file 4.77 kB
-
https://huggingface.co/spaces/msiklar/GCViennaSubway/resolve/main/utils.py
- Command line
-
hf download hf://spaces/msiklar/GCViennaSubway/utils.py
-
curl -L -o utils.py https://huggingface.co/spaces/msiklar/GCViennaSubway/resolve/main/utils.py
4.77 kB
| # Text in English and German for display in UI | |
| text_dict={ | |
| 'step1':{'English': 'STEP 1 - Enter your Geocaching name:', | |
| 'Deutsch': 'SCHRITT 1 - Gib deinen Geocaching Namen ein:' | |
| }, | |
| 'step2':{'English': 'STEP 2 - The following spelling of your nicknameame can be constructed from Vienna subway station names:', | |
| 'Deutsch': 'SCHRITT 2 - Die folgende Variante deines Nicknamens kann aus wiener U-Bahnstationen erzeugt werden:' | |
| }, | |
| 'step3':{'English': 'STEP 3 - Upload your image:', | |
| 'Deutsch': 'SCHRITT 3 - Lade dein Bild hoch:' | |
| }, | |
| 'explanation':{'English': 'See explanation - Which stations can you visit to costruct my nickname?', | |
| 'Deutsch': 'Erklärung - Welche Stationen kann ich besuchen um meinen Nicknamen zu erzeugen?' | |
| }, | |
| 'wait':{'English': 'wait for it...', | |
| 'Deutsch': 'bitte warten...' | |
| }, | |
| 'letter':{'English': 'Letter', | |
| 'Deutsch': 'Buchstabe' | |
| }, | |
| 'stations':{'English': 'Stations with that letter', | |
| 'Deutsch': 'Stationen mit dem Buchstaben' | |
| }, | |
| 'detect':{'English': 'The following text was detected in the image:', | |
| 'Deutsch': 'Folgender Text wurde im Bild detektiert:' | |
| }, | |
| 'correct':{'English': "The detected image text matches your nickname! The final coordinates are N48° 11.966' E016° 22.108'", | |
| 'Deutsch': "The detektierte Text im Bild entspricht deinem Nicknamen! Die finalen Koordinaten sind N48° 11.966' E016° 22.108'" | |
| }, | |
| 'wrong':{'Deutsch': 'Der detektierte Text im Bild entspricht nicht deinem Nicknamen!', | |
| 'English': 'The detected image text doesnt match your nickname!' | |
| } | |
| } | |
| def construct_possible_nickname(input): | |
| """ | |
| Function for converting nickname to possible nickname that can be constructed from subway station names used in app | |
| """ | |
| stations = ['U1:Oberlaa', 'U1:Neulaa', 'U1:Alaudagasse', 'U1:Altes Landgut', 'U1:Troststraße', 'U1:Reumannplatz', 'U1:Keplerplatz', 'U1:Südtiroler Platz – Hauptbahnhof', 'U1:Taubstummengasse', 'U1:Karlsplatz', 'U1:Stephansplatz', 'U1:Schwedenplatz', 'U1:Nestroyplatz', 'U1:Praterstern', 'U1:Vorgartenstraße', 'U1:Donauinsel', 'U1:Kaisermühlen – Vienna International Centre', 'U1:Alte Donau', 'U1:Kagran', 'U1:Kagraner Platz', 'U1:Rennbahnweg', 'U1:Aderklaaer Straße', 'U1:Großfeldsiedlung', 'U1:Leopoldau', | |
| 'U2:Seestadt', 'U2:Aspern Nord', 'U2:Hausfeldstraße', 'U2:Aspernstraße', 'U2:Donauspital', 'U2:Hardeggasse', 'U2:Stadlau', 'U2:Donaustadtbrücke', 'U2:Donaumarina', 'U2:Stadion', 'U2:Krieau', 'U2:Messe – Prater', 'U2:Praterstern', 'U2:Taborstraße', 'U2:Schottenring', 'U2:Schottentor', 'U2:Rathaus', 'U2:Volkstheater', 'U2:Museumsquartier', 'U2:Karlsplatz', | |
| 'U3:Ottakring', 'U3:Kendlerstraße', 'U3:Hütteldorfer Straße', 'U3:Johnstraße', 'U3:Schweglerstraße', 'U3:Westbahnhof', 'U3:Zieglergasse', 'U3:Neubaugasse', 'U3:Volkstheater', 'U3:Herrengasse', 'U3:Stephansplatz', 'U3:Stubentor', 'U3:Landstraße', 'U3:Rochusgasse', 'U3:Kardinal-Nagl-Platz', 'U3:Schlachthausgasse', 'U3:Erdberg', 'U3:Gasometer', 'U3:Zippererstraße', 'U3:Enkplatz', 'U3:Simmering', | |
| 'U4:Hütteldorf', 'U4:Ober St. Veit', 'U4:Unter St. Veit', 'U4:Braunschweiggasse', 'U4:Hietzing', 'U4:Schönbrunn', 'U4:Meidling Hauptstraße', 'U4:Längenfeldgasse', 'U4:Margaretengürtel', 'U4:Pilgramgasse', 'U4:Kettenbrückengasse', 'U4:Karlsplatz', 'U4:Stadtpark', 'U4:Landstraße', 'U4:Schwedenplatz', 'U4:Schottenring', 'U4:Roßauer Lände', 'U4:Friedensbrücke', 'U4:Spittelau', 'U4:Heiligenstadt', | |
| 'U6:Siebenhirten', 'U6:Perfektastraße', 'U6:Erlaaer Straße', 'U6:Alterlaa', 'U6:Am Schöpfwerk', 'U6:Tscherttegasse', 'U6:Bahnhof Meidling', 'U6:Niederhofstraße', 'U6:Längenfeldgasse', 'U6:Gumpendorfer Straße', 'U6:Westbahnhof', 'U6:Burggasse – Stadthalle', 'U6:Thaliastraße', 'U6:Josefstädter Straße', 'U6:Alser Straße', 'U6:Michelbeuern – Allgemeines Krankenhaus', 'U6:Währinger Straße – Volksoper', 'U6:Nußdorfer Straße', 'U6:Spittelau', 'U6:Jägerstraße', 'U6:Dresdner Straße', 'U6:Handelskai', 'U6:Neue Donau', 'U6:Floridsdorf'] | |
| target_stations = {} | |
| target_nickname = "" | |
| last_index = -1 | |
| for letter_index in range(0,len(input)): | |
| current_letter = input[letter_index] | |
| tmp_stations = [] | |
| for station in stations: | |
| if current_letter.lower() in station.lower()[3:]: | |
| tmp_stations.append(station) | |
| if last_index != letter_index: | |
| target_nickname += current_letter | |
| last_index = letter_index | |
| target_stations[current_letter]=tmp_stations | |
| return target_stations, target_nickname |