A Sprite dectection tool
Project description
Sprites Detection
A sprite is a small raster graphic (a bitmap) that represents an object such as a character, a vehicle, a projectile, etc.
Sprite Sheet
It is not uncommon for games to have tens to hundreds of sprites. Loading each of these as an individual image would consume a lot of memory and processing power. To help manage sprites and avoid using so many images, many games use sprite sheets (also known as image sprites).
A sprite sheet consists of multiple sprites in one image. In other words, sprite sheets pack multiple sprites into a single picture. Using sprite sheet, video game developers create sprite sheet animation representing one or several animation sequences while only loading a single file:
Sprite Bounding Box
A frame (bounding box) can be used to delimit the sprite in the sprite sheet. This bounding box is defined with two 2D points top_left
and the bottom_right
, which their respective coordinates x
and y
are relative to the top-left corner of the sprite sheet's image.
For example:
Sprite Mask
The mask of a sprite defines the 2D shape of the sprite. For example, the sprite sheet contains 3 following sprites:
The masks of these sprites are respectively:
Aim of the project
- Detect sprites packed in an image (sheet) and draw their masks and bounding boxes into a new image with the same size of the original image.
- Present a 2D map of all the the sprites with their labels.
Usage Information
Prerequisites
Python 3.6
is required.pip
is requied, to installsudo apt install pip
Usage
-
pip install Friendlyngoc
from your terminal -
Example of functioning:
-
Input as a spritesheet
-
A image with sprite masks
>>> from Friendlyngoc_spriteutil.spriteutil import SpriteSheet >>> sprite_sheet = SpriteSheet('spritesheet.png') >>> sprites, labels = sprite_sheet.find_sprites() >>> len(sprites) 22 >>> # Create the mask image with bounding boxes. >>> image = sprite_sheet.create_sprite_labels_image() >>> image.save('sprites_masks.png')
-
Contact Information
- Email:
Email: ngoc.dang@f4.intek.edu.vn
- Phone number:
Phone: (+84) 90 690 2056
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file Spriteutils_Ngoc_Dang-1.0.7.tar.gz
.
File metadata
- Download URL: Spriteutils_Ngoc_Dang-1.0.7.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ed72493f96023f271b823bfd446d2200ec4c7f7689773027999614a044efec0 |
|
MD5 | a4329e35144be9d404a6ea74448adff8 |
|
BLAKE2b-256 | 5c9c56f79cc75f736b5a50f6e6aee58388974c0ee12c1f31304136b40ac0460f |
File details
Details for the file Spriteutils_Ngoc_Dang-1.0.7-py3-none-any.whl
.
File metadata
- Download URL: Spriteutils_Ngoc_Dang-1.0.7-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.6.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28812003411d6097ebd577235549b91b7f00f0d307e91006e055c35cb8d1d6ab |
|
MD5 | e2f953c5117ffc78363235f9afd6ef38 |
|
BLAKE2b-256 | 20e9f1996d8b3ef5a3c3e6817f00107f1a1aeb3bca6b6cddf86734998511144d |