You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+59-3Lines changed: 59 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
# basepaint
2
-
The main goal of this repository is to be a set of scripts to create an archive for the art generated by the [basepaint.xyz](https://basepaint.xyz/) community, including metadataand stats. This is the main development repository which only contains the code and instructions on how to run it. The actual archive and PDFs are available at the companion repository [basepaint-media](https://github.com/isaacbernat/basepaint-media)
2
+
The main goal of this repository is to be a set of scripts to create an archive for the art generated by the [basepaint.xyz](https://basepaint.xyz/) community, including metadata, stats and descriptions. This is the main development repository which only contains the code and instructions on how to run it. The actual archive and PDFs are available at the companion repository [basepaint-media](https://github.com/isaacbernat/basepaint-media)
3
3
4
4
## Standard PDF edition
5
5
The archive is available in PDF form there:
@@ -23,6 +23,59 @@ An extended PDF version is available, with twice as many pages as the Standard E
23
23
-[Artworks with WIP from 401 to 500 in PDF](https://github.com/isaacbernat/basepaint-media/blob/main/pdf/basepaint_archive_0401_to_0500_with_WIP.pdf)
24
24
-_"Artworks with WIP from 501"_ PDF and beyond are unavailable. It would exceed GitHub's git lfs quota for free repositories. If you are interested, you'll need to clone this repo (or preferably [basepaint-media](https://github.com/isaacbernat/basepaint-media)) and generate them on your own.
25
25
26
+
## Descriptive PDF edition
27
+
This edition uses one page per artwork, and one line per element with the following format `(X,Y) **Element**: Description`. X and Y represent the coordinates of the element within the image, with (0,0) being the top left corner and (100,100) the bottom right. X is the horizontal coordinate and Y the vertical one.
28
+
29
+
The remaining blank space (in case there are not enough elements to fill the whole page) showcases a scaled down version of the original work with graded X and Y axis grids to help the reader locate the elements.
30
+
31
+
The description, location and meaning of each ((ir)relevant) artwork element are provided by Google's latest Gemini Generative AI freely available through API calls. It's a handy reference for those memes one may not be familiar with at first glance. Nevertheless, it's far from perfect.
32
+
33
+
### Sample
34
+
Here is the depiction of the previous finished artwork as an example, where I highlighted with magenta numbers the elements that were not successfully identified by the AI, yet are notable:
- 3 **Meme from The Sixth Sense**: (1999 movie), depicting the protagonist scared covered with a blanket.
41
+
- 4 **Skeletor**: supervillain from 1980s franchise He-Man and the Masters of the Universe.
42
+
- 5 **Guy Fawkes mask**: (aka Anonymous mask), a symbol of protest and rebellion.
43
+
- 6 **Tombstone 272**: depicting the number of the artwork.
44
+
- 7 **Anarchy symbol**: approx. since 1970s (AI thinks it's a number 4...)
45
+
46
+
#### Latest AI description of 272 (gemini-2.5-flash-preview-04-17)
47
+
- (76,39) **Skeletor**: Prominent skeletal figure in hood holding a staff, referencing the Masters of the Universe villain."
48
+
- (27,74) **He-Man's Arm**: Muscular arm holding a staff or sword piece, referencing the Masters of the Universe hero, opponent of Skeletor."
49
+
- (50,33) **Necromancer Figure**: Central skeletal figure wearing a wide-brimmed hat, likely the titular necromancer."
50
+
- (23,30) **Large Skull**: A large, detailed skull facing left."
51
+
- (40,70) **Dancing Skeleton**: A small skeleton figure with arms raised, referencing the ""Spooky Scary Skeletons"" or dancing skeleton memes."
52
+
- (85,20) **Moth near Lamp**: A large moth-like creature hovering near a glowing circle, referencing the Moth and Lamp internet meme."
53
+
- (75,58) **Hooded Figure**: A skeletal figure wearing a hood, resembling a Grim Reaper or other death personification."
54
+
- (65,45) **Glowing Eye**: A single large, glowing eye, a common spooky trope, possibly referencing Sauron's eye from Lord of the Rings."
55
+
- (45,48) **Creepy Laugh Face**: A face with a wide, unsettling smile, referencing the Creepy Laugh internet meme."
56
+
- (14,76) **Distressed Dude**: A face with a look of discomfort or distress, often used in reaction internet memes."
57
+
- (50,50) **Pentagram**: A five-pointed star symbol, often associated with occult practices like necromancy."
58
+
- (10,55) **""E"" Meme**: The blocky letter ""E"", a known internet meme derived from Markiplier's Lordquaad E meme."
59
+
- (90,10) **Ghost**: A simple sheet ghost shape, a common spooky element."
60
+
- (85,85) **Small Skull**: A smaller, distinct skull in the lower right corner."
61
+
- (20,50) **Small Skull**: A smaller, distinct skull on the left side below the large skull."
62
+
- (50,5) **Background Stars**: Small star shapes in the dark background sky."
63
+
64
+
#### Limitations
65
+
There is only 1-line of text per element. This severe limitation, along with superfluous words (e.g. "small", "large", "prominent") limits the information provided. Therefore, feel free to contribute and improve them and/or the prompt/model to generate them https://github.com/isaacbernat/basepaint/issues/8
66
+
67
+
Also, the descriptions in this archive may be provided by AIs and/or not be necessarily reviewed. Therefore they may contain errors, be incomplete and ultimately the responsibility one may be held accountable for is rather limited.
68
+
69
+
### PDF links
70
+
The descriptive PDF versions are available in PDF form there:
71
+
72
+
-[Artwork descriptions from 001 to 100 in PDF](https://github.com/isaacbernat/basepaint-media/blob/main/pdf/basepaint_archive_0001_to_0100_descriptive.pdf)
73
+
-[Artwork descriptions from 101 to 200 in PDF](https://github.com/isaacbernat/basepaint-media/blob/main/pdf/basepaint_archive_0101_to_0200_descriptive.pdf)
74
+
-[Artwork descriptions from 201 to 300 in PDF](https://github.com/isaacbernat/basepaint-media/blob/main/pdf/basepaint_archive_0201_to_0300_descriptive.pdf)
75
+
-[Artwork descriptions from 301 to 400 in PDF](https://github.com/isaacbernat/basepaint-media/blob/main/pdf/basepaint_archive_0301_to_0400_descriptive.pdf)
76
+
-[Artwork descriptions from 401 to 500 in PDF](https://github.com/isaacbernat/basepaint-media/blob/main/pdf/basepaint_archive_0401_to_0500_descriptive.pdf)
77
+
-[Artwork descriptions from 501 to 600 in PDF](https://github.com/isaacbernat/basepaint-media/blob/main/pdf/basepaint_archive_0501_to_0600_descriptive.pdf)
78
+
26
79
## PDF Cover
27
80
There's a custom made cover that is suitable for both PDF editions. It contains useful statistics on most popular colours
28
81
@@ -46,8 +99,11 @@ There's a custom made cover that is suitable for both PDF editions. It contains
46
99
-`metadata.csv`: csv file containing metadata for each image.
47
100
-`videos/`: directory containing the videos in mp4 format. They condense the 24h process of creating the image.
48
101
-`video_images/`: directory containing images in jpg format extracted from videos. Needed for the mosaic of Work In Progress pages that accompany each image in the pdf version.
49
-
5. To create the **cover** (`-c`) and/or the **extended PDFs**with video previews (`-v`) use the appropriate parameters.
50
-
- E.g. `python3 create_archive.py -c -v`
102
+
-`description.csv`: csv file containing the description of each element forall the images.
103
+
-`reduced_images/`: directory containing the reduced images in png format. Used to generate the descriptions.
104
+
105
+
5. To create the **cover** (`-c`) and/or the **extended PDFs**with video previews (`-v`) and/or the **descriptions** (`-d`) (with indexes `-di`) use the appropriate parameters.
106
+
- E.g. `python3 create_archive.py -c -v -d -di`
51
107
52
108
# About
53
109
This archive is a non-commercial, community-driven project intended for educational and historical purposes. It is**not** officially endorsed by the BasePaint team. Every effort has been made to respect the collaborative nature of BasePaint and the potential copyrights of individual creators.
parser.add_argument('-di', '--include-description-image', action='store_true', default=INCLUDE_DESCRIPTION_IMAGE, help='Include thumbnail under the image descriptions')
17
+
parser.add_argument('-dig', '--include-description-image-grid', action='store_true', default=INCLUDE_DESCRIPTION_IMAGE_GRID, help='Include grid on top of image descriptions')
18
+
parser.add_argument('-e', '--exclude-images', action='store_true', default=EXCLUDE_IMAGES, help='Exclude pages with images and metadata')
14
19
args=parser.parse_args()
15
20
16
21
print(f"Creating archive for up to day {LATEST}.")
0 commit comments