Kezdőoldal » Számítástechnika » Programozás » Pythonban hogyan tudok JPG...

Pythonban hogyan tudok JPG képeket vektorrá konvertálni, dataframe-be helyezni őket, majd egyenként visszahívni őket képpé?

Figyelt kérdés

Az egyszerűség kedvéért vegyünk egy 32 lapos magyarkártya paklit, amelynek minden lapjáról azonos méretű JPG-képek vannak. Ezeket szeretném átalakítani vektorrá, és így tárolni őket egy dataframe-ben, ahonnan meghívható bármelyik vektor a lap neve szerint (pl. Makk IX-es), és alakítható így vektorból ismét képpé. Az ember azt gondolná, hogy a képek 'asarray'-vel könnyen hozzáadhatok egy DF-hez, majd onnan 'fromarray'-vel meghívhatók, de nekem minden alkalommal hibaüzenetet ír ki a Python.


Üzenetben el tudom küldeni a kódot, amivel próbálkoztam.


Előre is köszönöm a segítséget!



2023. jan. 2. 14:19
1 2
 1/15 anonim ***** válasza:
0%
2023. jan. 2. 14:24
Hasznos számodra ez a válasz?
 2/15 anonim ***** válasza:
Nem egészen értem, mit szeretnél. Magát a képet szeretnéd vektorizálni? Vagy a képeket szeretnéd indexelni és a meta adatokat egy dataframe-ben tárolni?
2023. jan. 2. 14:36
Hasznos számodra ez a válasz?
 3/15 A kérdező kommentje:

2-es:

Kezdő vagyok még programozásban, igazából úgy szeretnék képeket tárolni, hogy egy kisméretű fájl foglalja őket magukba, és könnyen meghívhatók legyenek onnan az egyes képek. Én ehhez azt találtam ki magamnak jó megoldásnak, hogy egy dataframe egyes oszlopait feltöltöm vektorizált képekkel, és ezeket hívhatom meg.

A második megoldást, amit felvetettél, nem ismerem még, de ha az praktikusabb a célra, az is érdekes számomra.

2023. jan. 2. 14:39
 4/15 anonim ***** válasza:
100%
Nem teljesen értem a lényegét amit te szeretnél csinálni. Képek transzformálgatása sokkal macerásabb és számításigényesebb mint egy objektumnak átadni a képeket és onnan meghivogatni azokat amikor szükség van rájuk
2023. jan. 2. 16:47
Hasznos számodra ez a válasz?
 5/15 A kérdező kommentje:

4-es:

Világos, ebben az esetben milyen eljárást javasolsz objektumorientált irányként?

2023. jan. 2. 17:34
 6/15 anonim ***** válasza:
Ehhez meg kéne értenem azt hogy mi az oka ami miatt ezt az egész átalakítgatást meg akartad csinálni.
2023. jan. 2. 17:44
Hasznos számodra ez a válasz?
 7/15 anonim ***** válasza:
100%

Tehát. Képfájlokat nem alagítgatunk sehova, hanem tároljuk őket vagy a fájlrendszerben vagy adatbázisban. (Olyannyira, hogy még ha dinamikusan is akarsz képeket generálni, azt is cache-elni azaz gyorsítótárazni szokták, hogy ne kelljen újra és újra ezzel terhelni a szervert.)


Tehát leteszed a képeidet egy folderbe, és valamilyen szisztematikus, logikus nevet adsz nekik.


Ezt követően a feladat csak annyi, hogy tárold valamilyen formában a képek meta adatait (tehát hogy melyik kép a zöld király stb.).


Erre számtalan megoldás létezhet, de ha idiomatikus, szép Pythont akarsz tanulni, akkor Luciano Ramalho: Fluent Python c. könyve éppen egy ilyen kártyapaklis példával kezdődik, olyan mélységben, amilyet úgysem tudnál egyelőre magadtól összerakni ilyen szépen, szóval a legegyszerűbb, ha letöltöd a könyvet valahonnan, és tanulmányozod, hogy ő hogy csinálja.


De ha dataframe-ben akarod tárolni a metaadatokat, úgy is lehet. Az egyik oszlopban tartod a kártya számát, a másikban a színét, a harmadikban meg a képfájl sorszámát. Így már nincs más dolgod, csak kikeresni szám és szín alapján a neki megfelelő fájlnevet, és azt a fájlt visszaadni.


Vagy az egészet SQL-be teszed. Ha valamilyen ORM-et használsz (Django ORM vagy SQLAlchemy), akkor írsz a kártyához egy megfelelő classt, és abból kérdezgeted le a neki megfelelő képfájlt.

2023. jan. 2. 18:10
Hasznos számodra ez a válasz?
 8/15 anonim ***** válasza:
Ügyesen, ügyesen.
2023. jan. 2. 19:30
Hasznos számodra ez a válasz?
 9/15 A kérdező kommentje:
Köszönöm szépen a segítséget, valószínű akkor a könyv alapján indulok el!
2023. jan. 2. 20:57
 10/15 anonim ***** válasza:
Hallottál már esetleg a Stackoverflow oldalról? :)
2023. jan. 3. 10:09
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!