processors
Processors are used to prepare non-textual inputs (e.g., image or audio) for a model.
Example: Using a WhisperProcessor to prepare an audio input for a model.
import { AutoProcessor, read_audio } from '@xenova/transformers';
let processor = await AutoProcessor.from_pretrained('openai/whisper-tiny.en');
let audio = await read_audio('https://huggingface.co/datasets/Narsil/asr_dummy/resolve/main/mlk.flac', 16000);
let { input_features } = await processor(audio);
// Tensor {
// data: Float32Array(240000) [0.4752984642982483, 0.5597258806228638, 0.56434166431427, ...],
// dims: [1, 80, 3000],
// type: 'float32',
// size: 240000,
// }- processors
- static
- .FeatureExtractor β
Callable - .ImageFeatureExtractor β
FeatureExtractornew ImageFeatureExtractor(config).preprocess(image)βPromise.<any>._call(images)βPromise.<Object>
- .DetrFeatureExtractor β
ImageFeatureExtractor._call(urls)βPromise.<Object>.post_process_object_detection():post_process_object_detection.remove_low_and_no_objects(class_logits, mask_logits, object_mask_threshold, num_labels)β*.check_segment_validity(mask_labels, mask_probs, k, mask_threshold, overlap_mask_area_threshold)β*.compute_segments(mask_probs, pred_scores, pred_labels, mask_threshold, overlap_mask_area_threshold, label_ids_to_fuse, target_size)β*.post_process_panoptic_segmentation(outputs, [threshold], [mask_threshold], [overlap_mask_area_threshold], [label_ids_to_fuse], [target_sizes])βArray.<{segmentation: Tensor, segments_info: Array<{id: number, label_id: number, score: number}>}>
- .Processor β
Callablenew Processor(feature_extractor)._call(input)βPromise.<any>
- .WhisperProcessor β
Processor._call(audio)βPromise.<any>
- .AutoProcessor
.from_pretrained(pretrained_model_name_or_path, options)βPromise.<Processor>
- .FeatureExtractor β
- inner
~center_to_corners_format(arr)βArray.<number>~post_process_object_detection(outputs)βArray.<Object>~box:Array.<number>
~PretrainedOptions:*
- static
processors.FeatureExtractor β Callable
Base class for feature extractors.
Kind: static class of processors
Extends: Callable
new FeatureExtractor(config)
Constructs a new FeatureExtractor instance.
| Param | Type | Description |
|---|---|---|
| config | Object | The configuration for the feature extractor. |
processors.ImageFeatureExtractor β FeatureExtractor
Feature extractor for image models.
Kind: static class of processors
Extends: FeatureExtractor
- .ImageFeatureExtractor β
FeatureExtractornew ImageFeatureExtractor(config).preprocess(image)βPromise.<any>._call(images)βPromise.<Object>
new ImageFeatureExtractor(config)
Constructs a new ImageFeatureExtractor instance.
| Param | Type | Description |
|---|---|---|
| config | Object | The configuration for the feature extractor. |
| config.image_mean | Array.<number> | The mean values for image normalization. |
| config.image_std | Array.<number> | The standard deviation values for image normalization. |
| config.do_rescale | boolean | Whether to rescale the image pixel values to the [0,1] range. |
| config.rescale_factor | number | The factor to use for rescaling the image pixel values. |
| config.do_normalize | boolean | Whether to normalize the image pixel values. |
| config.do_resize | boolean | Whether to resize the image. |
| config.resample | number | What method to use for resampling. |
| config.size | number | The size to resize the image to. |
imageFeatureExtractor.preprocess(image) β Promise.<any>
Preprocesses the given image.
Kind: instance method of ImageFeatureExtractor
Returns: Promise.<any> - The preprocessed image as a Tensor.
| Param | Type | Description |
|---|---|---|
| image | RawImage | The image to preprocess. |
imageFeatureExtractor._call(images) β Promise.<Object>
Calls the feature extraction process on an array of image URLs, preprocesses each image, and concatenates the resulting features into a single Tensor.
Kind: instance method of ImageFeatureExtractor
Returns: Promise.<Object> - An object containing the concatenated pixel values (and other metadata) of the preprocessed images.
| Param | Type | Description |
|---|---|---|
| images | any | The URL(s) of the image(s) to extract features from. |
processors.DetrFeatureExtractor β ImageFeatureExtractor
Detr Feature Extractor.
Kind: static class of processors
Extends: ImageFeatureExtractor
- .DetrFeatureExtractor β
ImageFeatureExtractor._call(urls)βPromise.<Object>.post_process_object_detection():post_process_object_detection.remove_low_and_no_objects(class_logits, mask_logits, object_mask_threshold, num_labels)β*.check_segment_validity(mask_labels, mask_probs, k, mask_threshold, overlap_mask_area_threshold)β*.compute_segments(mask_probs, pred_scores, pred_labels, mask_threshold, overlap_mask_area_threshold, label_ids_to_fuse, target_size)β*.post_process_panoptic_segmentation(outputs, [threshold], [mask_threshold], [overlap_mask_area_threshold], [label_ids_to_fuse], [target_sizes])βArray.<{segmentation: Tensor, segments_info: Array<{id: number, label_id: number, score: number}>}>
detrFeatureExtractor._call(urls) β Promise.<Object>
Calls the feature extraction process on an array of image URLs, preprocesses each image, and concatenates the resulting features into a single Tensor.
Kind: instance method of DetrFeatureExtractor
Returns: Promise.<Object> - An object containing the concatenated pixel values of the preprocessed images.
| Param | Type | Description |
|---|---|---|
| urls | any | The URL(s) of the image(s) to extract features from. |
detrFeatureExtractor.post_process_object_detection() : post_process_object_detection
Kind: instance method of DetrFeatureExtractor
detrFeatureExtractor.remove_low_and_no_objects(class_logits, mask_logits, object_mask_threshold, num_labels) β *
Binarize the given masks using object_mask_threshold, it returns the associated values of masks, scores and labels.
Kind: instance method of DetrFeatureExtractor
Returns: * - The binarized masks, the scores, and the labels.
| Param | Type | Description |
|---|---|---|
| class_logits | Tensor | The class logits. |
| mask_logits | Tensor | The mask logits. |
| object_mask_threshold | number | A number between 0 and 1 used to binarize the masks. |
| num_labels | number | The number of labels. |
detrFeatureExtractor.check_segment_validity(mask_labels, mask_probs, k, mask_threshold, overlap_mask_area_threshold) β *
Checks whether the segment is valid or not.
Kind: instance method of DetrFeatureExtractor
Returns: * - Whether the segment is valid or not, and the indices of the valid labels.
| Param | Type | Default | Description |
|---|---|---|---|
| mask_labels | Int32Array | Labels for each pixel in the mask. |
|
| mask_probs | Array.<Tensor> | Probabilities for each pixel in the masks. |
|
| k | number | The class id of the segment. |
|
| mask_threshold | number | 0.5 | The mask threshold. |
| overlap_mask_area_threshold | number | 0.8 | The overlap mask area threshold. |
detrFeatureExtractor.compute_segments(mask_probs, pred_scores, pred_labels, mask_threshold, overlap_mask_area_threshold, label_ids_to_fuse, target_size) β *
Computes the segments.
Kind: instance method of DetrFeatureExtractor
Returns: * - The computed segments.
| Param | Type | Default | Description |
|---|---|---|---|
| mask_probs | Array.<Tensor> | The mask probabilities. |
|
| pred_scores | Array.<number> | The predicted scores. |
|
| pred_labels | Array.<number> | The predicted labels. |
|
| mask_threshold | number | The mask threshold. |
|
| overlap_mask_area_threshold | number | The overlap mask area threshold. |
|
| label_ids_to_fuse | Set.<number> | | The label ids to fuse. |
| target_size | Array.<number> | | The target size of the image. |
detrFeatureExtractor.post_process_panoptic_segmentation(outputs, [threshold], [mask_threshold], [overlap_mask_area_threshold], [label_ids_to_fuse], [target_sizes]) β Array.<{segmentation: Tensor, segments_info: Array<{id: number, label_id: number, score: number}>}>
Post-process the model output to generate the final panoptic segmentation.
Kind: instance method of DetrFeatureExtractor
| Param | Type | Default | Description |
|---|---|---|---|
| outputs | * | The model output to post process |
|
| [threshold] | number | 0.5 | The probability score threshold to keep predicted instance masks. |
| [mask_threshold] | number | 0.5 | Threshold to use when turning the predicted masks into binary values. |
| [overlap_mask_area_threshold] | number | 0.8 | The overlap mask area threshold to merge or discard small disconnected parts within each binary instance mask. |
| [label_ids_to_fuse] | Set.<number> | | The labels in this state will have all their instances be fused together. |
| [target_sizes] | Array.<Array<number>> | | The target sizes to resize the masks to. |
processors.Processor β Callable
Represents a Processor that extracts features from an input.
Kind: static class of processors
Extends: Callable
- .Processor β
Callablenew Processor(feature_extractor)._call(input)βPromise.<any>
new Processor(feature_extractor)
Creates a new Processor with the given feature extractor.
| Param | Type | Description |
|---|---|---|
| feature_extractor | FeatureExtractor | The function used to extract features from the input. |
processor._call(input) β Promise.<any>
Calls the feature_extractor function with the given input.
Kind: instance method of Processor
Returns: Promise.<any> - A Promise that resolves with the extracted features.
| Param | Type | Description |
|---|---|---|
| input | any | The input to extract features from. |
processors.WhisperProcessor β Processor
Represents a WhisperProcessor that extracts features from an audio input.
Kind: static class of processors
Extends: Processor
whisperProcessor._call(audio) β Promise.<any>
Calls the feature_extractor function with the given audio input.
Kind: instance method of WhisperProcessor
Returns: Promise.<any> - A Promise that resolves with the extracted features.
| Param | Type | Description |
|---|---|---|
| audio | any | The audio input to extract features from. |
processors.AutoProcessor
Helper class which is used to instantiate pretrained processors with the from_pretrained function.
The chosen processor class is determined by the type specified in the processor config.
Example: Load a processor using from_pretrained.
let processor = await AutoProcessor.from_pretrained('openai/whisper-tiny.en');Example: Run an image through a processor.
let processor = await AutoProcessor.from_pretrained('Xenova/clip-vit-base-patch16');
let image = await RawImage.read('https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/football-match.jpg');
let image_inputs = await processor(image);
// {
// "pixel_values": {
// "dims": [ 1, 3, 224, 224 ],
// "type": "float32",
// "data": Float32Array [ -1.558687686920166, -1.558687686920166, -1.5440893173217773, ... ],
// "size": 150528
// },
// "original_sizes": [
// [ 533, 800 ]
// ],
// "reshaped_input_sizes": [
// [ 224, 224 ]
// ]
// }Kind: static class of processors
AutoProcessor.from_pretrained(pretrained_model_name_or_path, options) β Promise.<Processor>
Instantiate one of the processor classes of the library from a pretrained model.
The processor class to instantiate is selected based on the feature_extractor_type property of the config object
(either passed as an argument or loaded from pretrained_model_name_or_path if possible)
Kind: static method of AutoProcessor
Returns: Promise.<Processor> - A new instance of the Processor class.
| Param | Type | Description |
|---|---|---|
| pretrained_model_name_or_path | string | The name or path of the pretrained model. Can be either:
|
| options | PretrainedOptions | Additional options for loading the processor. |
processors~center_to_corners_format(arr) β Array.<number>
Converts bounding boxes from center format to corners format.
Kind: inner method of processors
Returns: Array.<number> - The coodinates for the top-left and bottom-right corners of the box (top_left_x, top_left_y, bottom_right_x, bottom_right_y)
| Param | Type | Description |
|---|---|---|
| arr | Array.<number> | The coordinate for the center of the box and its width, height dimensions (center_x, center_y, width, height) |
processors~post_process_object_detection(outputs) β Array.<Object>
Post-processes the outputs of the model (for object detection).
Kind: inner method of processors
Returns: Array.<Object> - An array of objects containing the post-processed outputs.
| Param | Type | Description |
|---|---|---|
| outputs | Object | The outputs of the model that must be post-processed |
| outputs.logits | Tensor | The logits |
| outputs.pred_boxes | Tensor | The predicted boxes. |
post_process_object_detection~box : Array.<number>
Kind: inner property of post_process_object_detection
processors~PretrainedOptions : *
Kind: inner typedef of processors