filter_images#

Dataset.filter_images(index: Any, mode: Literal['loc', 'iloc'] = 'loc') Self[source]#

Method equivalent of Dataset.loc and Dataset.iloc

Parameters:
  • index – Index object used in self.images.loc[] or self.images.iloc[]

  • mode – whether to be equivalent to Dataset.loc or Dataset.iloc. Defaults to “loc”

Returns:

Filtered dataset

Example

>>> from lours.utils.doc_utils import dummy_dataset
>>> example = dummy_dataset(2, 2, seed=1)
>>> example
Dataset object containing 2 images and 2 objects
Name :
    shake_effort_many
Images root :
    care/suggest
Images :
    width  height        relative_path  type  split
id
0     955     229  determine/story.jpg  .jpg  train
1     131     840       air/method.bmp  .bmp  train
Annotations :
    image_id category_str  category_id  ...   box_y_min   box_width  box_height
id                                      ...
0          1       listen           14  ...  276.974642    9.718823  184.684056
1          0        reach           22  ...    6.311037  123.141689  174.239136

[2 rows x 8 columns]
Label map :
{14: 'listen', 15: 'marriage', 22: 'reach'}
>>> example.filter_images(example.images["type"] == ".jpg", mode="loc")
Dataset object containing 1 image and 1 object
Name :
    shake_effort_many
Images root :
    care/suggest
Images :
    width  height        relative_path  type  split
id
0     955     229  determine/story.jpg  .jpg  train
Annotations :
    image_id category_str  category_id  ... box_y_min   box_width  box_height
id                                      ...
1          0        reach           22  ...  6.311037  123.141689  174.239136

[1 rows x 8 columns]
Label map :
{14: 'listen', 15: 'marriage', 22: 'reach'}
>>> example.filter_images(0, mode="iloc")
Dataset object containing 1 image and 1 object
Name :
    shake_effort_many
Images root :
    care/suggest
Images :
    width  height        relative_path  type  split
id
0     955     229  determine/story.jpg  .jpg  train
Annotations :
    image_id category_str  category_id  ... box_y_min   box_width  box_height
id                                      ...
1          0        reach           22  ...  6.311037  123.141689  174.239136

[1 rows x 8 columns]
Label map :
{14: 'listen', 15: 'marriage', 22: 'reach'}