# OneFormer

## Genel Bakış

OneFormer modeli, Jitesh Jain, Jiachen Li, MangTik Chiu, Ali Hassani, Nikita Orlov ve Humphrey Shi tarafından [OneFormer: One Transformer to Rule Universal Image Segmentation](https://huggingface.co/papers/2211.06220) makalesinde önerilmiştir. OneFormer, tek bir panoptik veri setinde eğitilerek semantik, örnek ve panoptik segmentasyon görevlerini gerçekleştirebilen evrensel bir görüntü segmentasyon çerçevesidir. OneFormer, modeli odaklanılan göreve göre koşullandırmak için bir görev belirteci (task token) kullanır; bu sayede mimari eğitim için görev yönlendirmeli, çıkarım için ise görev dinamik hale gelir.

Makalenin özeti aşağıdaki gibidir:

*Evrensel Görüntü Segmentasyonu yeni bir kavram değildir. Son on yıllarda görüntü segmentasyonunu birleştirmeye yönelik geçmiş denemeler arasında sahne ayrıştırma, panoptik segmentasyon ve daha yakın zamanda yeni panoptik mimariler yer almaktadır. Ancak bu tür panoptik mimariler, en iyi performansı elde etmek için semantik, örnek veya panoptik segmentasyon üzerinde ayrı ayrı eğitilmeleri gerektiğinden görüntü segmentasyonunu gerçekten birleştirmemektedir. İdeal olarak, gerçek anlamda evrensel bir çerçeve yalnızca bir kez eğitilmeli ve üç görüntü segmentasyon görevinin tamamında SOTA performansına ulaşmalıdır. Bu amaçla, segmentasyonu çok görevli bir kez eğit (train-once) tasarımıyla birleştiren evrensel bir görüntü segmentasyon çerçevesi olan OneFormer'ı öneriyoruz. Öncelikle, her alanın (semantik, örnek ve panoptik segmentasyon) yer doğrularını (ground truth) tek bir çok görevli eğitim süreci içinde eğitmeyi mümkün kılan, görev koşullu ortak bir eğitim stratejisi öneriyoruz. İkinci olarak, modelimizi ele alınan göreve göre koşullandırmak için bir görev belirteci (task token) sunuyoruz; bu sayede modelimiz çok görevli eğitim ve çıkarımı destekleyecek şekilde görev-dinamik (task-dynamic) hale geliyor. Üçüncü olarak, eğitim sırasında görevler arası ve sınıflar arası daha iyi ayrımlar kurmak için sorgu-metin karşıtlık kaybının (query-text contrastive loss) kullanılmasını öneriyoruz. Belirgin bir şekilde, tek bir OneFormer modelimiz, ADE20k, CityScapes ve COCO üzerinde üç segmentasyon görevinin tamamında, her bir görev için üç kat daha fazla kaynakla ayrı ayrı eğitilmiş uzmanlaşmış Mask2Former modellerini geride bırakmaktadır. Yeni ConvNeXt ve DiNAT omurgaları (backbone) ile daha da fazla performans artışı gözlemliyoruz. OneFormer'ın, görüntü segmentasyonunu daha evrensel ve erişilebilir hale getirme yolunda önemli bir adım olduğuna inanıyoruz.*

Aşağıdaki şekil, OneFormer mimarisini göstermektedir. [orijinal makale](https://huggingface.co/papers/2211.06220)'den alınmıştır.

Bu model [Jitesh Jain](https://huggingface.co/praeclarumjj3) tarafından katkıda bulunmuştur. Orijinal kod [burada](https://github.com/SHI-Labs/OneFormer) bulunabilir.

## Kullanım ipuçları

- OneFormer, çıkarım sırasında iki girdi gerektirir: *image* ve *task token*.
- Eğitim sırasında OneFormer yalnızca panoptik etiketleri kullanır.
- Modeli birden fazla düğüm arasında dağıtık bir ortamda eğitmek istiyorsanız, `modeling_oneformer.py` içindeki `OneFormerLoss` sınıfındaki `get_num_masks` fonksiyonunu güncellemeniz gerekir. Birden fazla düğümde eğitim sırasında bu değer, [burada](https://github.com/SHI-Labs/OneFormer/blob/33ebb56ed34f970a30ae103e786c0cb64c653d9a/oneformer/modeling/criterion.py#L287) görüldüğü gibi, tüm düğümler arasındaki hedef maskelerin ortalama sayısı olarak ayarlanmalıdır.
- [OneFormerProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerProcessor) sınıfı, model için giriş görsellerini ve görev girdilerini, ayrıca isteğe bağlı hedefleri hazırlamak için kullanılabilir. [OneFormerProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerProcessor), [OneFormerImageProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor) ve [CLIPTokenizer](/docs/transformers/main/tr/model_doc/clip#transformers.CLIPTokenizer) sınıflarını tek bir örnekte birleştirerek hem görselleri hazırlar hem de görev girdilerini kodlar.
- Görevin türüne bağlı olarak nihai segmentasyonu almak için `post_process_semantic_segmentation()` veya [post_process_instance_segmentation()](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor.post_process_instance_segmentation) ya da [post_process_panoptic_segmentation()](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor.post_process_panoptic_segmentation) çağrılabilir. [OneFormerForUniversalSegmentation](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerForUniversalSegmentation) çıktısı kullanılarak üç görevin de çözülebilir; panoptik segmentasyon, hedef nesne/nesnelerin (ör. gökyüzü) örneklerini birleştirmek için isteğe bağlı `label_ids_to_fuse` argümanını kabul eder.

## Kaynaklar

OneFormer ile başlamanıza yardımcı olmak için resmi Hugging Face ve topluluk (🌎 ile belirtilen) kaynaklarının listesi.

- Özel verilerde çıkarım + ince ayar hakkında demo defterleri [burada](https://github.com/NielsRogge/Transformers-Tutorials/tree/master/OneFormer) bulunabilir.

Buraya bir kaynak eklemek isterseniz, bir Pull Request açmaktan çekinmeyin; inceleyeceğiz. Kaynağın, mevcut bir kaynağı tekrarlamak yerine ideal olarak yeni bir şeyi göstermesi beklenir.

## OneFormer'e özgü çıktılar[[transformers.models.oneformer.modeling_oneformer.OneFormerModelOutput]]

#### transformers.models.oneformer.modeling_oneformer.OneFormerModelOutput[[transformers.models.oneformer.modeling_oneformer.OneFormerModelOutput]]

```python
transformers.models.oneformer.modeling_oneformer.OneFormerModelOutput(encoder_hidden_states: tuple[torch.Tensor] | None = None, pixel_decoder_hidden_states: tuple[torch.Tensor] | None = None, transformer_decoder_hidden_states: typing.Optional[torch.Tensor] = None, transformer_decoder_object_queries: typing.Optional[torch.Tensor] = None, transformer_decoder_contrastive_queries: typing.Optional[torch.Tensor] = None, transformer_decoder_mask_predictions: typing.Optional[torch.Tensor] = None, transformer_decoder_class_predictions: typing.Optional[torch.Tensor] = None, transformer_decoder_auxiliary_predictions: tuple[dict[str, torch.Tensor]] | None = None, text_queries: typing.Optional[torch.Tensor] = None, task_token: typing.Optional[torch.Tensor] = None, attentions: tuple[torch.Tensor] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/modeling_oneformer.py#L829)

**Parametreler:**

encoder_hidden_states (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) : `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren bir tuple, şekli `(batch_size, num_channels, height, width)`. Kodlayıcı modelin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).

pixel_decoder_hidden_states (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) : `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren bir tuple, şekli `(batch_size, num_channels, height, width)`. Piksel çözücü modelinin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).

transformer_decoder_hidden_states (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) : `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren bir tuple, şekli `(batch_size, sequence_length, hidden_size)`. Her aşamanın çıktısında dönüştürücü çözücünün gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).

transformer_decoder_object_queries (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) : Transformer decoder'ın son katmanından gelen çıktı nesne sorguları.

transformer_decoder_contrastive_queries (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) : Transformer decoder'ından gelen kontrastif sorgular.

transformer_decoder_mask_predictions (`torch.Tensor`, şekli `(batch_size, num_queries, height, width)`) : Transformer decoder'ının son katmanından gelen maske tahminleri.

transformer_decoder_class_predictions (`torch.Tensor`, şekli `(batch_size, num_queries, num_classes+1)`) : Transformer decoder'ın son katmanından gelen sınıf tahminleri.

transformer_decoder_auxiliary_predictions (`Tuple` of Dict of `str, torch.Tensor`, *opsiyonel*) : Transformer decoder'ın her katmanından sınıf ve maske tahminlerinin tuple'ı.

text_queries (`torch.Tensor`, *isteğe bağlı*, şekli `(batch_size, num_queries, hidden_dim)`) : Eğitim sırasında kontrastif kaybın hesaplanmasında kullanılan, girdi metin listesinden türetilen metin sorguları.

task_token (`torch.Tensor`, şekli `(batch_size, hidden_dim)`) : Sorguları koşullandırmak için 1B görev belirteci.

attentions (`tuple(tuple(torch.Tensor))`, *opsiyonel*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) : `tuple(torch.Tensor)` (her katman için bir tane) içeren bir Tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`. Transformer decoder'dan Self ve Cross Attentions ağırlıkları.

[OneFormerModel](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerModel) çıktılarının sınıfı. Bu sınıf, logitleri hesaplamak için gereken tüm gizli durumları döndürür.

#### transformers.models.oneformer.modeling_oneformer.OneFormerForUniversalSegmentationOutput[[transformers.models.oneformer.modeling_oneformer.OneFormerForUniversalSegmentationOutput]]

```python
transformers.models.oneformer.modeling_oneformer.OneFormerForUniversalSegmentationOutput(loss: typing.Optional[torch.Tensor] = None, class_queries_logits: typing.Optional[torch.Tensor] = None, masks_queries_logits: typing.Optional[torch.Tensor] = None, auxiliary_predictions: list = None, encoder_hidden_states: tuple[torch.Tensor] | None = None, pixel_decoder_hidden_states: list[torch.Tensor] | None = None, transformer_decoder_hidden_states: typing.Optional[torch.Tensor] = None, transformer_decoder_object_queries: typing.Optional[torch.Tensor] = None, transformer_decoder_contrastive_queries: typing.Optional[torch.Tensor] = None, transformer_decoder_mask_predictions: typing.Optional[torch.Tensor] = None, transformer_decoder_class_predictions: typing.Optional[torch.Tensor] = None, transformer_decoder_auxiliary_predictions: list[dict[str, torch.Tensor]] | None = None, text_queries: typing.Optional[torch.Tensor] = None, task_token: typing.Optional[torch.Tensor] = None, attentions: tuple[tuple[torch.Tensor]] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/modeling_oneformer.py#L886)

**Parametreler:**

loss (`torch.Tensor`, *isteğe bağlı*) : Etiketler mevcut olduğunda döndürülen hesaplanan kayıp.

class_queries_logits (`torch.Tensor`, *isteğe bağlı*) : Her sorgu için önerilen sınıfları temsil eden, `(batch_size, num_queries, num_labels + 1)` biçiminde bir tensör. `+ 1`'in, null sınıfını dahil ettiğimiz için gerekli olduğunu unutmayın.

masks_queries_logits (`torch.Tensor`, *isteğe bağlı*) : Her sorgu için önerilen maskeleri temsil eden, `(batch_size, num_queries, height, width)` biçiminde bir tensör.

auxiliary_predictions (`List` of Dict of `str, torch.Tensor`, *opsiyonel*) : Transformer decoder'ın her katmanından gelen sınıf ve maske tahminlerinin listesi.

encoder_hidden_states (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) : `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren bir tuple, şekli `(batch_size, num_channels, height, width)`. Kodlayıcı modelin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).

pixel_decoder_hidden_states (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) : `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren bir tuple, şekli `(batch_size, num_channels, height, width)`. Piksel çözücü modelinin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).

transformer_decoder_hidden_states (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) : `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren bir tuple, şekli `(batch_size, sequence_length, hidden_size)`. Her aşamanın çıktısında dönüştürücü çözücünün gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).

transformer_decoder_object_queries (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) : Transformer decoder'ın son katmanından gelen çıktı nesne sorguları.

transformer_decoder_contrastive_queries (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) : Transformer decoder'ından gelen kontrastif sorgular.

transformer_decoder_mask_predictions (`torch.Tensor`, şekli `(batch_size, num_queries, height, width)`) : Transformer decoder'ının son katmanından gelen maske tahminleri.

transformer_decoder_class_predictions (`torch.Tensor`, şekli `(batch_size, num_queries, num_classes+1)`) : Transformer decoder'ın son katmanından gelen sınıf tahminleri.

transformer_decoder_auxiliary_predictions (`List` of Dict of `str, torch.Tensor`, *opsiyonel*) : Transformer decoder'ın her katmanından gelen sınıf ve maske tahminlerinin listesi.

text_queries (`torch.Tensor`, *isteğe bağlı*, şekli `(batch_size, num_queries, hidden_dim)`) : Eğitim sırasında kontrastif kaybın hesaplanmasında kullanılan, girdi metin listesinden türetilen metin sorguları.

task_token (`torch.Tensor`, şekli `(batch_size, hidden_dim)`) : Sorguları koşullandırmak için 1B görev belirteci.

attentions (`tuple(tuple(torch.Tensor))`, *opsiyonel*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) : `tuple(torch.Tensor)` (her katman için bir tane) içeren bir Tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`. Transformer decoder'dan Self ve Cross Attentions ağırlıkları.

`OneFormerForUniversalSegmentationOutput` çıktılarının sınıfı.

Bu çıktı, görevine bağlı olarak doğrudan [post_process_semantic_segmentation()](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor.post_process_semantic_segmentation) veya [post_process_instance_segmentation()](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor.post_process_instance_segmentation) veya [post_process_panoptic_segmentation()](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor.post_process_panoptic_segmentation) işlevlerine aktarılabilir. Kullanımına ilişkin ayrıntılar için [`~OneFormerImageProcessor] sayfasına bakın.

## OneFormerConfig[[transformers.OneFormerConfig]]

#### transformers.OneFormerConfig[[transformers.OneFormerConfig]]

```python
transformers.OneFormerConfig(transformers_version: str | None = None, architectures: list[str] | None = None, output_hidden_states: bool | None = False, return_dict: bool | None = True, dtype: str | torch.dtype | None = None, chunk_size_feed_forward: int = 0, is_encoder_decoder: bool = False, id2label: dict[int, str] | dict[str, str] | None = None, label2id: dict[str, int] | dict[str, str] | None = None, problem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = None, backbone_config: dict | transformers.configuration_utils.PreTrainedConfig | None = None, ignore_value: int = 255, num_queries: int = 150, no_object_weight: float = 0.1, class_weight: float = 2.0, mask_weight: float = 5.0, dice_weight: float = 5.0, contrastive_weight: float = 0.5, contrastive_temperature: float = 0.07, train_num_points: int = 12544, oversample_ratio: float = 3.0, importance_sample_ratio: float = 0.75, init_std: float = 0.02, init_xavier_std: float = 1.0, layer_norm_eps: float = 1e-05, is_training: bool = False, use_auxiliary_loss: bool = True, output_auxiliary_logits: bool = True, strides: list[int] | tuple[int, ...] = (4, 8, 16, 32), task_seq_len: int = 77, text_encoder_width: int = 256, text_encoder_context_length: int = 77, text_encoder_num_layers: int = 6, text_encoder_vocab_size: int = 49408, text_encoder_proj_layers: int = 2, text_encoder_n_ctx: int = 16, conv_dim: int = 256, mask_dim: int = 256, hidden_dim: int = 256, encoder_feedforward_dim: int = 1024, norm: str = 'GN', encoder_layers: int = 6, decoder_layers: int = 10, use_task_norm: bool = True, num_attention_heads: int = 8, dropout: float | int = 0.1, dim_feedforward: int = 2048, pre_norm: bool = False, enforce_input_proj: bool = False, query_dec_layers: int = 2, common_stride: int = 4)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/configuration_oneformer.py#L25)

**Parametreler:**

backbone_config (`Union[dict, ~configuration_utils.PreTrainedConfig]`, *isteğe bağlı*) : Omurga modelinin yapılandırması.

ignore_value (`int`, *isteğe bağlı*, varsayılan 255) : Kayıp hesaplanırken GT etiketinde yok sayılacak değerler.

num_queries (`int`, *isteğe bağlı*, varsayılan 150) : Nesne sorgusu sayısı.

no_object_weight (`float`, *opsiyonel*, varsayılan `0.1`) : Nesne algılama kaybında nesne-olmayan sınıfın göreli sınıflandırma ağırlığı.

class_weight (`float`, *opsiyonel*, varsayılan `2.0`) : Macar eşleştirme maliyetinde sınıflandırma hatasının göreli ağırlığı.

mask_weight (`float`, *isteğe bağlı*, varsayılan `5.0`) : Panoptik segmentasyon kaybında odak kaybının göreli ağırlığı.

dice_weight (`float`, *isteğe bağlı*, varsayılan `5.0`) : Panoptik segmentasyon kaybında dice kaybının göreli ağırlığı.

contrastive_weight (`float`, *isteğe bağlı*, varsayılan 0.5) : Karşılaştırmalı kayıp için ağırlık.

contrastive_temperature (`float`, *opsiyonel*, varsayılan 0.07) : Karşıtlık logitlerini ölçeklemek için başlangıç değeri.

train_num_points (`int`, *opsiyonel*, varsayılan 12544) : Mask tahminlerinde kayıplar hesaplanırken örneklenen nokta sayısı.

oversample_ratio (`float`, *isteğe bağlı*, varsayılan 3.0) : Kaç noktanın aşırı örneklenmesine karar vermek için kullanılan oran.

importance_sample_ratio (`float`, *opsiyonel*, varsayılan 0.75) : Önem örneklemesi (importance sampling) ile örneklenen noktaların oranı.

init_std (`float`, *opsiyonel*, varsayılan `0.02`) : Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması.

init_xavier_std (`float`, *isteğe bağlı*, varsayılan `1.0`) : Çapraz dikkat ağırlıklarının Xavier başlatılmasında kullanılan ölçekleme faktörü.

layer_norm_eps (`float`, *opsiyonel*, varsayılan `1e-05`) : Katman normalizasyonu katmanları tarafından kullanılan epsilon.

is_training (`bool`, *isteğe bağlı*, varsayılan `False`) : Eğitim veya çıkarım modunda çalışıp çalışmayacağı.

use_auxiliary_loss (`bool`, *isteğe bağlı*, varsayılan `True`) : Transformer decoder'ın ara tahminlerini kullanarak loss hesaplanıp hesaplanmayacağı.

output_auxiliary_logits (`bool`, *isteğe bağlı*, varsayılan `True`) : Transformer decoder'dan ara tahminlerin döndürülüp döndürülmeyeceğini belirtir.

strides (`list`, *optional*, defaults to `[4, 8, 16, 32]`) : List containing the strides for feature maps in the encoder.

task_seq_len (`int`, *isteğe bağlı*, varsayılan 77) : Metin listesi girdisini belirteçlere ayırmak için dizi uzunluğu.

text_encoder_width (`int`, *isteğe bağlı*, varsayılan 256) : Metin kodlayıcısı için gizli boyut.

text_encoder_context_length (`int`, *isteğe bağlı*, varsayılan 77) : Metin kodlayıcı için girdi dizisi uzunluğu.

text_encoder_num_layers (`int`, *isteğe bağlı*, varsayılan 6) : Metin kodlayıcıdaki dönüştürücünün katman sayısı.

text_encoder_vocab_size (`int`, *isteğe bağlı*, varsayılan 49408) : Sözcük ayrıştırıcının sözlük boyutu.

text_encoder_proj_layers (`int`, *isteğe bağlı*, varsayılan 2) : Metin sorgularını projelendirmek için MLP'deki katman sayısı.

text_encoder_n_ctx (`int`, *isteğe bağlı*, varsayılan 16) : Öğrenilebilir metin bağlam sorgularının sayısı.

conv_dim (`int`, *isteğe bağlı*, varsayılan 256) : Omurgadan gelen çıktıları eşlemek için özellik haritası boyutu.

mask_dim (`int`, *isteğe bağlı*, varsayılan 256) : Piksel çözücüdeki özellik haritaları için boyut.

hidden_dim (`int`, *isteğe bağlı*, varsayılan 256) : Transformer decoder'da gizli durumlar için boyut.

encoder_feedforward_dim (`int`, *opsiyonel*, varsayılan 1024) : Piksel çözücüdeki FFN katmanı için boyut.

norm (`str`, *isteğe bağlı*, varsayılan `"GN"`) : Normalizasyon türü.

encoder_layers (`int`, *isteğe bağlı*, varsayılan `6`) : Transformer kodlayıcısındaki gizli katman sayısı. Ayarlanmazsa `num_layers` ile aynı değeri kullanır.

decoder_layers (`int`, *isteğe bağlı*, varsayılan `10`) : Transformer decoder'ındaki gizli katman sayısı. Ayarlanmazsa `num_layers` ile aynı değer kullanılır.

use_task_norm (`bool`, *isteğe bağlı*, varsayılan `True`) : Görev token'ının normalize edilip edilmeyeceği.

num_attention_heads (`int`, *isteğe bağlı*, varsayılan `8`) : Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı.

dropout (`Union[float, int]`, *isteğe bağlı*, varsayılan `0.1`) : Tüm dropout katmanları için oran.

dim_feedforward (`int`, *isteğe bağlı*, varsayılan 2048) : Transformer decoder'daki FFN katmanı için boyut.

pre_norm (`bool`, *isteğe bağlı*, varsayılan `False`) : Transformer decoder'da dikkat katmanlarından önce gizli durumların normalize edilip edilmeyeceğini belirtir.

enforce_input_proj (`bool`, *isteğe bağlı*, varsayılan `False`) : Transformer decoder'de gizli durumların projekte edilip edilmeyeceğini belirtir.

query_dec_layers (`int`, *isteğe bağlı*, varsayılan 2) : Sorgu dönüştürücüsündeki katman sayısı.

common_stride (`int`, *isteğe bağlı*, varsayılan 4) : Piksel ayrıştırıcıda özellikler için kullanılan ortak adım.

Bu, bir OneFormerModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Oneformer modelinin örneklenmesi ve model mimarisinin tanımlanması için kullanılır. Varsayılanlarla bir yapılandırma örneği oluşturmak, [shi-labs/oneformer_ade20k_swin_tiny](https://huggingface.co/shi-labs/oneformer_ade20k_swin_tiny) modelinin yapılandırmasına benzer bir yapılandırma elde edilmesini sağlar.

Yapılandırma nesneleri [PreTrainedConfig](/docs/transformers/main/tr/main_classes/configuration#transformers.PreTrainedConfig) sınıfından türetilir ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için [PreTrainedConfig](/docs/transformers/main/tr/main_classes/configuration#transformers.PreTrainedConfig) belgesini okuyun.

Örnekler:
```python
>>> from transformers import OneFormerConfig, OneFormerModel

>>> # Initializing a OneFormer shi-labs/oneformer_ade20k_swin_tiny configuration
>>> configuration = OneFormerConfig()
>>> # Initializing a model (with random weights) from the shi-labs/oneformer_ade20k_swin_tiny style configuration
>>> model = OneFormerModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.config
```

## OneFormerImageProcessor[[transformers.OneFormerImageProcessor]]

#### transformers.OneFormerImageProcessor[[transformers.OneFormerImageProcessor]]

```python
transformers.OneFormerImageProcessor(**kwargs: *<class 'transformers.models.oneformer.image_processing_oneformer.OneFormerImageProcessorKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_oneformer.py#L275)

**Parametreler:**

do_convert_rgb (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin RGB'ye dönüştürülüp dönüştürülmeyeceği.

do_resize (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin yeniden boyutlandırılıp boyutlandırılmayacağı.

size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*, varsayılan `{'shortest_edge' : 800, 'longest_edge': 1333}`): Modelin kabul ettiği maksimum giriş boyutlarını açıklar.

default_to_square (`bool`, *kwargs*, *opsiyonel*, varsayılan `False`) : Boyut bir int ise, yeniden boyutlandırma sırasında varsayılan olarak kare bir görüntü kullanılıp kullanılmayacağını belirtir.

crop_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : `center_crop` uygulandıktan sonra çıktı görüntüsünün boyutu.

resample (`Annotated[Union[int, PILImageResampling, NoneType], None]`, *kwargs*, varsayılan `2`) : Görsel yeniden boyutlandırılıyorsa kullanılacak yeniden örnekleme filtresi. Bu, `PILImageResampling` enum değerlerinden biri olabilir. Yalnızca `do_resize` `True` olarak ayarlanırsa etkilidir.

do_rescale (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin yeniden ölçeklendirilip ölçeklendirilmeyeceğini belirtir.

rescale_factor (`float`, *kwargs*, *opsiyonel*, varsayılan `0.00392156862745098`) : `do_rescale` `True` olarak ayarlandığında görüntüyü yeniden ölçeklemek için kullanılan yeniden ölçekleme faktörü.

do_normalize (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin normalize edilip edilmeyeceğini belirtir.

image_mean (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*, varsayılan değeri `[0.485, 0.456, 0.406]`) : Normalizasyon için kullanılacak görüntü ortalaması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

image_std (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*, varsayılan `[0.229, 0.224, 0.225]`) : Normalizasyon için kullanılacak görüntü standart sapması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

do_pad (`bool`, *kwargs*, *isteğe bağlı*) : Görselin dolgu (padding) uygulanıp uygulanmayacağını belirtir. Dolgu, ya batch içindeki en büyük boyuta ya da görsel başına sabit bir kare boyuta yapılır. Kesin dolgu stratejisi modele bağlıdır.

pad_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : Görsellerin doldurulacağı boyut, `{"height": int, "width" int}` biçiminde. Ön işleme için sağlanan herhangi bir görsel boyutundan büyük olmalıdır. `pad_size` sağlanmazsa, görseller partideki en büyük yüksekliğe ve genişliğe doldurulur. Yalnızca `do_pad=True.` olduğunda uygulanır.

do_center_crop (`bool`, *kwargs*, *opsiyonel*) : Görselin merkezden kırpılıp kırpılmayacağını belirtir.

data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Yalnızca `ChannelDimension.FIRST` desteklenir. Yavaş işleyicilerle uyumluluk için eklendi.

input_data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Girdi görüntüsünün kanal boyutu biçimi. Ayarlanmazsa, kanal boyutu biçimi girdi görüntüsünden çıkarılır. Aşağıdakilerden biri olabilir: - `"channels_first"` veya `ChannelDimension.FIRST`: (num_channels, height, width) biçiminde görüntü. - `"channels_last"` veya `ChannelDimension.LAST`: (height, width, num_channels) biçiminde görüntü. - `"none"` veya `ChannelDimension.NONE`: (height, width) biçiminde görüntü.

device (`Annotated[Union[str, torch.device, NoneType], None]`, *kwargs*) : Videoların işleneceği cihaz. Ayarlanmamışsa, cihaz girdi videolarından çıkarılır.

return_tensors (`Annotated[str | ~utils.generic.TensorType | None, None]`, *kwargs*) : `'pt'` olarak ayarlanırsa yığılmış tensörleri, aksi halde tensör listesi döndürür.

disable_grouping (`bool`, *kwargs*, *opsiyonel*) : Görsellerin boyuta göre gruplandırılmasını devre dışı bırakarak bunların toplu olarak değil, tek tek işlenmesini sağlar. None ise, görseller CPU üzerindeyse True, aksi halde False olarak ayarlanır. Bu seçim, buradaki ayrıntılı açıklamalara dayalı ampirik gözlemlere dayanmaktadır: https://github.com/huggingface/transformers/pull/38157

image_seq_length (`int`, *kwargs*, *isteğe bağlı*) : Girdideki her görüntü için kullanılacak görüntü jetonlarının sayısı. Geriye dönük uyumluluk için eklendi ancak bu, gelecekteki modellerde bir işlemci özniteliği olarak ayarlanmalıdır.

repo_path (`str`, *kwargs*, *isteğe bağlı*, varsayılan `shi-labs/oneformer_demo`) : Model metadata içeren yerel bir dizinin veya HuggingFace Hub deposunun yolu.

class_info_file (`str`, *kwargs*, *isteğe bağlı*) : Sınıf meta verilerini içeren, depodaki JSON dosyasının yolu.

num_text (`int`, *kwargs*, *isteğe bağlı*) : Metin kodlayıcı için metin sorgusu sayısı, görev yönlendirmesi olarak kullanılan istemler.

num_labels (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon için sınıfsal sayısını belirler ve çıktı katmanının boyutunu belirler.

ignore_index (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon haritalarında yok sayılacak etiket, genellikle dolgu (padding) için kullanılır.

do_reduce_labels (`bool`, *kwargs*, *opsiyonel*, varsayılan `False`) : Tüm etiket değerlerini 1 azaltarak arka plan sınıfını `ignore_index` değerine eşleyip eşlemeyeceğini belirtir.

Bir OneFormerImageProcessor görüntü işleyicisi oluşturur.

#### preprocess[[transformers.OneFormerImageProcessor.preprocess]]

```python
preprocess(images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor']], task_inputs: list[str] | None = None, segmentation_maps: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor'], NoneType] = None, instance_id_to_semantic_id: list[dict[int, int]] | dict[int, int] | None = None, **kwargs: *<class 'transformers.models.oneformer.image_processing_oneformer.OneFormerImageProcessorKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_oneformer.py#L300)

**Parametreler:**

images (`Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]`) : Ön işlenecek görüntü. Piksel değerleri 0 ile 255 arasında değişen tek bir görüntü veya görüntü grubu beklenir. Piksel değerleri 0 ile 1 arasında olan görüntüler geçiriliyorsa `do_rescale=False` olarak ayarlayın.

task_inputs (`list[str]`, *isteğe bağlı*) : Batch'teki her görüntü için görevlerin listesi (`"panoptic"`, `"instance"`, `"semantic"`).

segmentation_maps (`ImageInput`, *isteğe bağlı*) : Segmentasyon haritaları.

instance_id_to_semantic_id (`Union[list[dict[int, int]], dict[int, int]]`, *isteğe bağlı*) : Örnek kimliklerinden anlamsal kimliklere bir eşleme.

do_convert_rgb (`bool`, *kwargs*, *isteğe bağlı*) : Görselin RGB'ye dönüştürülüp dönüştürülmeyeceği.

do_resize (`bool`, *kwargs*, *isteğe bağlı*) : Görselin yeniden boyutlandırılıp boyutlandırılmayacağı.

size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : Modelin kabul ettiği maksimum giriş boyutlarını açıklar.

default_to_square (`bool`, *kwargs*, *opsiyonel*) : Boyut bir int ise, yeniden boyutlandırma sırasında varsayılan olarak kare bir görsel kullanılıp kullanılmayacağı.

crop_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : `center_crop` uygulandıktan sonra çıktı görüntüsünün boyutu.

resample (`Annotated[Union[int, PILImageResampling, NoneType], None]`, *kwargs*) : Görsel yeniden boyutlandırılıyorsa kullanılacak yeniden örnekleme filtresi. Bu, `PILImageResampling` enum değerlerinden biri olabilir. Yalnızca `do_resize` `True` olarak ayarlanırsa etkilidir.

do_rescale (`bool`, *kwargs*, *opsiyonel*) : Görselin yeniden ölçeklendirilip ölçeklendirilmeyeceğini belirtir.

rescale_factor (`float`, *kwargs*, *opsiyonel*) : `do_rescale` `True` olarak ayarlanırsa görüntüyü yeniden ölçeklemek için yeniden ölçekleme çarpanı.

do_normalize (`bool`, *kwargs*, *isteğe bağlı*) : Görüntünün normalize edilip edilmeyeceğini belirtir.

image_mean (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*) : Normalizasyon için kullanılacak görüntü ortalaması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

image_std (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*) : Normalizasyon için kullanılacak görüntü standart sapması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

do_pad (`bool`, *kwargs*, *isteğe bağlı*) : Görselin dolgu (padding) uygulanıp uygulanmayacağını belirtir. Dolgu, ya batch içindeki en büyük boyuta ya da görsel başına sabit bir kare boyuta yapılır. Kesin dolgu stratejisi modele bağlıdır.

pad_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : Görsellerin doldurulacağı boyut, `{"height": int, "width" int}` biçiminde. Ön işleme için sağlanan herhangi bir görsel boyutundan büyük olmalıdır. `pad_size` sağlanmazsa, görseller partideki en büyük yüksekliğe ve genişliğe doldurulur. Yalnızca `do_pad=True.` olduğunda uygulanır.

do_center_crop (`bool`, *kwargs*, *opsiyonel*) : Görselin merkezden kırpılıp kırpılmayacağını belirtir.

data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Yalnızca `ChannelDimension.FIRST` desteklenir. Yavaş işleyicilerle uyumluluk için eklendi.

input_data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Girdi görüntüsünün kanal boyutu biçimi. Ayarlanmazsa, kanal boyutu biçimi girdi görüntüsünden çıkarılır. Aşağıdakilerden biri olabilir: - `"channels_first"` veya `ChannelDimension.FIRST`: (num_channels, height, width) biçiminde görüntü. - `"channels_last"` veya `ChannelDimension.LAST`: (height, width, num_channels) biçiminde görüntü. - `"none"` veya `ChannelDimension.NONE`: (height, width) biçiminde görüntü.

device (`Annotated[Union[str, torch.device, NoneType], None]`, *kwargs*) : Videoların işleneceği cihaz. Ayarlanmamışsa, cihaz girdi videolarından çıkarılır.

return_tensors (`Annotated[str | ~utils.generic.TensorType | None, None]`, *kwargs*) : `'pt'` olarak ayarlanırsa yığılmış tensörleri, aksi halde tensör listesi döndürür.

disable_grouping (`bool`, *kwargs*, *opsiyonel*) : Görsellerin boyuta göre gruplandırılmasını devre dışı bırakarak bunların toplu olarak değil, tek tek işlenmesini sağlar. None ise, görseller CPU üzerindeyse True, aksi halde False olarak ayarlanır. Bu seçim, buradaki ayrıntılı açıklamalara dayalı ampirik gözlemlere dayanmaktadır: https://github.com/huggingface/transformers/pull/38157

image_seq_length (`int`, *kwargs*, *isteğe bağlı*) : Girdideki her görüntü için kullanılacak görüntü jetonlarının sayısı. Geriye dönük uyumluluk için eklendi ancak bu, gelecekteki modellerde bir işlemci özniteliği olarak ayarlanmalıdır.

repo_path (`str`, *kwargs*, *isteğe bağlı*, varsayılan `shi-labs/oneformer_demo`) : Model metadata içeren yerel bir dizinin veya HuggingFace Hub deposunun yolu.

class_info_file (`str`, *kwargs*, *isteğe bağlı*) : Sınıf meta verilerini içeren, depodaki JSON dosyasının yolu.

num_text (`int`, *kwargs*, *isteğe bağlı*) : Metin kodlayıcı için metin sorgusu sayısı, görev yönlendirmesi olarak kullanılan istemler.

num_labels (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon için sınıfsal sayısını belirler ve çıktı katmanının boyutunu belirler.

ignore_index (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon haritalarında yok sayılacak etiket, genellikle dolgu (padding) için kullanılır.

do_reduce_labels (`bool`, *kwargs*, *opsiyonel*, varsayılan `False`) : Tüm etiket değerlerini 1 azaltarak arka plan sınıfını `ignore_index` değerine eşleyip eşlemeyeceğini belirtir.

**Dönüş:** `~image_processing_base.BatchFeature`

- **data** (`dict`) -- __call__ yönteminin döndürdüğü listeler/diziler/tensörler sözlüğü ('pixel_values' vb.).
- **tensor_type** (`Union[None, str, TensorType]`, *isteğe bağlı*) -- Başlatma sırasında PyTorch/Numpy Tensörlerindeki tamsayı listelerini dönüştürmek için burada bir tensor_type verebilirsiniz.

#### post_process_semantic_segmentation[[transformers.OneFormerImageProcessor.post_process_semantic_segmentation]]

```python
post_process_semantic_segmentation(outputs, target_sizes: list[tuple[int, int]] | None = None, return_segmentation_scores: bool = False)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_oneformer.py#L690)

**Parametreler:**

outputs ([OneFormerForUniversalSegmentation](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerForUniversalSegmentation)) : Modelin ham çıktıları.

target_sizes (`list[tuple[int, int]]`, *isteğe bağlı*) : Uzunluğu (batch_size) olan bir liste, her liste öğesi (`Tuple[int, int]]`) tahminlerin her birinin istenen nihai boyutuna (yükseklik, genişlik) karşılık gelir. None olarak bırakılırsa, tahminler yeniden boyutlandırılmaz.

return_segmentation_scores (`bool`, *isteğe bağlı*, varsayılan `False`) : Segmentasyon haritasının yanı sıra segmentasyon puanlarının da döndürülüp döndürülmeyeceğini belirtir. `True` olduğunda, döndürülen listenin her öğesi `segmentation` (sınıf kimlikleri, şekil `(height, width)`) ve `segmentation_scores` (şekil `(num_classes, height, width)`) alanlarına sahip bir `SemanticSegmentationPostProcessorOutput` nesnesidir.

**Dönüş:** `list[torch.Tensor]` veya `list[SemanticSegmentationPostProcessorOutput]`

`return_segmentation_scores=False` (varsayılan) olduğunda, her öğesi sınıf kimliklerine sahip, `(height, width)` biçiminde bir segmentasyon haritası olan, uzunluğu `batch_size` olan bir liste döndürülür. `return_segmentation_scores=True` olduğunda, `segmentation` (sınıf kimlikleri, `(height, width)` biçimi) ve `segmentation_scores` (`(num_classes, height, width)` biçimi) alanlarına sahip `SemanticSegmentationPostProcessorOutput` nesnelerinden oluşan bir liste döndürülür. Her iki durumda da `(height, width)`, hedef boyuta (`target_sizes` belirtilmişse) karşılık gelir.

[OneFormerForUniversalSegmentation](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerForUniversalSegmentation) çıktısını anlamsal segmentasyon haritalarına dönüştürür. Yalnızca PyTorch desteklenir.

#### post_process_instance_segmentation[[transformers.OneFormerImageProcessor.post_process_instance_segmentation]]

```python
post_process_instance_segmentation(outputs, task_type: str = 'instance', is_demo: bool = True, threshold: float = 0.5, mask_threshold: float = 0.5, overlap_mask_area_threshold: float = 0.8, target_sizes: list[tuple[int, int]] | None = None, return_coco_annotation: bool | None = False)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_oneformer.py#L766)

**Parametreler:**

outputs (`OneFormerForUniversalSegmentationOutput`) : `OneFormerForUniversalSegmentationOutput`'dan gelen çıktılar.

task_type (`str`, *isteğe bağlı*, varsayılan "instance") : Son işleme, görev belirteci girdisine bağlıdır. `task_type` "panoptic" ise, stuff tahminlerini yok saymamız gerekir.

is_demo (`bool`, *isteğe bağlı*, varsayılan `True`) : Modelin demo modunda olup olmadığı. Bu değer doğruysa, son maskeleri tahmin etmek için eşik değeri kullanılır.

threshold (`float`, *opsiyonel*, varsayılan 0.5) : Tahmin edilen örnek maskelerini tutmak için olasılık puanı eşiği.

mask_threshold (`float`, *isteğe bağlı*, varsayılan 0.5) : Tahmin edilen maskelerin ikili değerlere dönüştürülürken kullanılacak eşik.

overlap_mask_area_threshold (`float`, *opsiyonel*, varsayılan 0.8) : Her ikili örnek maskesi içindeki küçük, bağlantısı kesik parçaları birleştirmek veya atmak için kullanılan örtüşme maskesi alanı eşiği.

target_sizes (`List[Tuple]`, *isteğe bağlı*) : Uzunluğu (batch_size) olan bir liste, burada her liste öğesi (`Tuple[int, int]]`) batch'teki her tahminin istenen nihai boyutuna (yükseklik, genişlik) karşılık gelir. None olarak bırakılırsa, tahminler yeniden boyutlandırılmaz.

return_coco_annotation (`bool`, *isteğe bağlı*, varsayılan `False`) : Tahminlerin COCO biçiminde döndürülüp döndürülmeyeceğini belirtir.

**Dönüş:** `List[Dict]`

Her biri bir görüntüye ait olan ve her biri iki anahtar içeren sözlüklerden oluşan bir liste:
- **segmentation** -- her pikselin bir `segment_id` temsil ettiği, `(height, width)` biçiminde bir tensör; `threshold` üzerinde bir maske bulunamazsa `None` olarak ayarlanır. `target_sizes` belirtilirse, segmentation, `target_sizes` girdisine göre yeniden boyutlandırılır.
- **segments_info** -- Her segment hakkında ek bilgiler içeren bir sözlük.
  - **id** -- `segment_id`'yi temsil eden bir tamsayır.
  - **label_id** -- `segment_id` ile eşleşen etiket / semantik sınıf kimliğini temsil eden bir tamsayır.
  - **was_fused** -- bir boole değeri, `label_id` `label_ids_to_fuse` içindeyse `True`, aksi halde `False`. Aynı sınıfın / etiketin birden fazla örneği birleştirilip tek bir `segment_id` atandı.
  - **score** -- `segment_id` ile segmentin tahmin skoru.

`OneFormerForUniversalSegmentationOutput` çıktısını görüntü örneği segmentasyonu tahminlerine dönüştürür. Yalnızca PyTorch desteklenir.

#### post_process_panoptic_segmentation[[transformers.OneFormerImageProcessor.post_process_panoptic_segmentation]]

```python
post_process_panoptic_segmentation(outputs, threshold: float = 0.5, mask_threshold: float = 0.5, overlap_mask_area_threshold: float = 0.8, label_ids_to_fuse: set[int] | None = None, target_sizes: list[tuple[int, int]] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_oneformer.py#L886)

**Parametreler:**

outputs (`MaskFormerForInstanceSegmentationOutput`) : [MaskFormerForInstanceSegmentation](/docs/transformers/main/tr/model_doc/maskformer#transformers.MaskFormerForInstanceSegmentation)'ın çıktıları.

threshold (`float`, *opsiyonel*, varsayılan 0.5) : Tahmin edilen örnek maskelerini tutmak için olasılık puanı eşiği.

mask_threshold (`float`, *isteğe bağlı*, varsayılan 0.5) : Tahmin edilen maskelerin ikili değerlere dönüştürülürken kullanılacak eşik.

overlap_mask_area_threshold (`float`, *opsiyonel*, varsayılan 0.8) : Her ikili örnek maskesi içindeki küçük, bağlantısı kesik parçaları birleştirmek veya atmak için kullanılan örtüşme maskesi alanı eşiği.

label_ids_to_fuse (`Set[int]`, *isteğe bağlı*) : Bu durumdaki etiketlerin tüm örnekleri birleştirilecektir. Örneğin, bir görüntüde yalnızca bir gökyüzü, ancak birden fazla kişi olabileceğini söyleyebiliriz; bu nedenle gökyüzü için etiket kimliği bu kümede yer alırken, kişi için olan yer almaz.

target_sizes (`list[Tuple]`, *isteğe bağlı*) : Uzunluğu (batch_size) olan bir liste, her liste öğesi (`tuple[int, int]]`) batch'teki her tahminin istenen nihai boyutuna (yükseklik, genişlik) karşılık gelir. None olarak bırakılırsa, tahminler yeniden boyutlandırılmaz.

**Dönüş:** `list[Dict]`

Her biri bir görüntüye ait olan ve her biri iki anahtar içeren sözlüklerden oluşan bir liste:
- **segmentation** -- her pikselin bir `segment_id` temsil ettiği, `(height, width)` biçiminde bir tensör; `threshold` üzerinde bir maske bulunamazsa `None` olarak ayarlanır. `target_sizes` belirtilirse, segmentation, `target_sizes` girdisine göre yeniden boyutlandırılır.
- **segments_info** -- Her segment hakkında ek bilgiler içeren bir sözlük.
  - **id** -- `segment_id`'yi temsil eden bir tamsayır.
  - **label_id** -- `segment_id` ile eşleşen etiket / semantik sınıf kimliğini temsil eden bir tamsayır.
  - **was_fused** -- bir boole değeri, `label_id` `label_ids_to_fuse` içindeyse `True`, aksi halde `False`. Aynı sınıfın / etiketin birden fazla örneği birleştirilip tek bir `segment_id` atandı.
  - **score** -- `segment_id` ile segmentin tahmin skoru.

`MaskFormerForInstanceSegmentationOutput` çıktısını görüntü panotik segmentasyon tahminlerine dönüştürür. Yalnızca PyTorch desteklenir.

## OneFormerImageProcessorPil[[transformers.OneFormerImageProcessorPil]]

#### transformers.OneFormerImageProcessorPil[[transformers.OneFormerImageProcessorPil]]

```python
transformers.OneFormerImageProcessorPil(**kwargs: *<class 'transformers.models.oneformer.image_processing_pil_oneformer.OneFormerImageProcessorKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_pil_oneformer.py#L293)

**Parametreler:**

do_convert_rgb (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin RGB'ye dönüştürülüp dönüştürülmeyeceği.

do_resize (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin yeniden boyutlandırılıp boyutlandırılmayacağı.

size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*, varsayılan `{'shortest_edge' : 800, 'longest_edge': 1333}`): Modelin kabul ettiği maksimum giriş boyutlarını açıklar.

default_to_square (`bool`, *kwargs*, *opsiyonel*, varsayılan `False`) : Boyut bir int ise, yeniden boyutlandırma sırasında varsayılan olarak kare bir görüntü kullanılıp kullanılmayacağını belirtir.

crop_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : `center_crop` uygulandıktan sonra çıktı görüntüsünün boyutu.

resample (`Annotated[Union[int, PILImageResampling, NoneType], None]`, *kwargs*, varsayılan `2`) : Görsel yeniden boyutlandırılıyorsa kullanılacak yeniden örnekleme filtresi. Bu, `PILImageResampling` enum değerlerinden biri olabilir. Yalnızca `do_resize` `True` olarak ayarlanırsa etkilidir.

do_rescale (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin yeniden ölçeklendirilip ölçeklendirilmeyeceğini belirtir.

rescale_factor (`float`, *kwargs*, *opsiyonel*, varsayılan `0.00392156862745098`) : `do_rescale` `True` olarak ayarlandığında görüntüyü yeniden ölçeklemek için kullanılan yeniden ölçekleme faktörü.

do_normalize (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : Görselin normalize edilip edilmeyeceğini belirtir.

image_mean (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*, varsayılan değeri `[0.485, 0.456, 0.406]`) : Normalizasyon için kullanılacak görüntü ortalaması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

image_std (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*, varsayılan `[0.229, 0.224, 0.225]`) : Normalizasyon için kullanılacak görüntü standart sapması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

do_pad (`bool`, *kwargs*, *isteğe bağlı*) : Görselin dolgu (padding) uygulanıp uygulanmayacağını belirtir. Dolgu, ya batch içindeki en büyük boyuta ya da görsel başına sabit bir kare boyuta yapılır. Kesin dolgu stratejisi modele bağlıdır.

pad_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : Görsellerin doldurulacağı boyut, `{"height": int, "width" int}` biçiminde. Ön işleme için sağlanan herhangi bir görsel boyutundan büyük olmalıdır. `pad_size` sağlanmazsa, görseller partideki en büyük yüksekliğe ve genişliğe doldurulur. Yalnızca `do_pad=True.` olduğunda uygulanır.

do_center_crop (`bool`, *kwargs*, *opsiyonel*) : Görselin merkezden kırpılıp kırpılmayacağını belirtir.

data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Yalnızca `ChannelDimension.FIRST` desteklenir. Yavaş işleyicilerle uyumluluk için eklendi.

input_data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Girdi görüntüsünün kanal boyutu biçimi. Ayarlanmazsa, kanal boyutu biçimi girdi görüntüsünden çıkarılır. Aşağıdakilerden biri olabilir: - `"channels_first"` veya `ChannelDimension.FIRST`: (num_channels, height, width) biçiminde görüntü. - `"channels_last"` veya `ChannelDimension.LAST`: (height, width, num_channels) biçiminde görüntü. - `"none"` veya `ChannelDimension.NONE`: (height, width) biçiminde görüntü.

device (`Annotated[Union[str, torch.device, NoneType], None]`, *kwargs*) : Videoların işleneceği cihaz. Ayarlanmamışsa, cihaz girdi videolarından çıkarılır.

return_tensors (`Annotated[str | ~utils.generic.TensorType | None, None]`, *kwargs*) : `'pt'` olarak ayarlanırsa yığılmış tensörleri, aksi halde tensör listesi döndürür.

disable_grouping (`bool`, *kwargs*, *opsiyonel*) : Görsellerin boyuta göre gruplandırılmasını devre dışı bırakarak bunların toplu olarak değil, tek tek işlenmesini sağlar. None ise, görseller CPU üzerindeyse True, aksi halde False olarak ayarlanır. Bu seçim, buradaki ayrıntılı açıklamalara dayalı ampirik gözlemlere dayanmaktadır: https://github.com/huggingface/transformers/pull/38157

image_seq_length (`int`, *kwargs*, *isteğe bağlı*) : Girdideki her görüntü için kullanılacak görüntü jetonlarının sayısı. Geriye dönük uyumluluk için eklendi ancak bu, gelecekteki modellerde bir işlemci özniteliği olarak ayarlanmalıdır.

repo_path (`str`, *kwargs*, *isteğe bağlı*, varsayılan `shi-labs/oneformer_demo`) : Model metadata içeren yerel bir dizinin veya HuggingFace Hub deposunun yolu.

class_info_file (`str`, *kwargs*, *isteğe bağlı*) : Sınıf meta verilerini içeren, depodaki JSON dosyasının yolu.

num_text (`int`, *kwargs*, *isteğe bağlı*) : Metin kodlayıcı için metin sorgusu sayısı, görev yönlendirmesi olarak kullanılan istemler.

num_labels (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon için sınıfsal sayısını belirler ve çıktı katmanının boyutunu belirler.

ignore_index (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon haritalarında yok sayılacak etiket, genellikle dolgu (padding) için kullanılır.

do_reduce_labels (`bool`, *kwargs*, *opsiyonel*, varsayılan `False`) : Tüm etiket değerlerini 1 azaltarak arka plan sınıfını `ignore_index` değerine eşleyip eşlemeyeceğini belirtir.

Bir OneFormerImageProcessor görüntü işleyicisi oluşturur.

#### preprocess[[transformers.OneFormerImageProcessorPil.preprocess]]

```python
preprocess(images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor']], task_inputs: list[str] | None = None, segmentation_maps: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor'], NoneType] = None, instance_id_to_semantic_id: list[dict[int, int]] | dict[int, int] | None = None, **kwargs: *<class 'transformers.models.oneformer.image_processing_pil_oneformer.OneFormerImageProcessorKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_pil_oneformer.py#L318)

**Parametreler:**

images (`Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]`) : Ön işlenecek görüntü. Piksel değerleri 0 ile 255 arasında değişen tek bir görüntü veya görüntü grubu beklenir. Piksel değerleri 0 ile 1 arasında olan görüntüler geçiriliyorsa `do_rescale=False` olarak ayarlayın.

task_inputs (`list[str]`, *isteğe bağlı*) : Batch'teki her görüntü için görevlerin listesi (`"panoptic"`, `"instance"`, `"semantic"`).

segmentation_maps (`ImageInput`, *isteğe bağlı*) : Segmentasyon haritaları.

instance_id_to_semantic_id (`Union[list[dict[int, int]], dict[int, int]]`, *isteğe bağlı*) : Örnek kimliklerinden anlamsal kimliklere bir eşleme.

do_convert_rgb (`bool`, *kwargs*, *isteğe bağlı*) : Görselin RGB'ye dönüştürülüp dönüştürülmeyeceği.

do_resize (`bool`, *kwargs*, *isteğe bağlı*) : Görselin yeniden boyutlandırılıp boyutlandırılmayacağı.

size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : Modelin kabul ettiği maksimum giriş boyutlarını açıklar.

default_to_square (`bool`, *kwargs*, *opsiyonel*) : Boyut bir int ise, yeniden boyutlandırma sırasında varsayılan olarak kare bir görsel kullanılıp kullanılmayacağı.

crop_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : `center_crop` uygulandıktan sonra çıktı görüntüsünün boyutu.

resample (`Annotated[Union[int, PILImageResampling, NoneType], None]`, *kwargs*) : Görsel yeniden boyutlandırılıyorsa kullanılacak yeniden örnekleme filtresi. Bu, `PILImageResampling` enum değerlerinden biri olabilir. Yalnızca `do_resize` `True` olarak ayarlanırsa etkilidir.

do_rescale (`bool`, *kwargs*, *opsiyonel*) : Görselin yeniden ölçeklendirilip ölçeklendirilmeyeceğini belirtir.

rescale_factor (`float`, *kwargs*, *opsiyonel*) : `do_rescale` `True` olarak ayarlanırsa görüntüyü yeniden ölçeklemek için yeniden ölçekleme çarpanı.

do_normalize (`bool`, *kwargs*, *isteğe bağlı*) : Görüntünün normalize edilip edilmeyeceğini belirtir.

image_mean (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*) : Normalizasyon için kullanılacak görüntü ortalaması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

image_std (`Union[float, list[float], tuple[float, ...]]`, *kwargs*, *opsiyonel*) : Normalizasyon için kullanılacak görüntü standart sapması. Yalnızca `do_normalize` `True` olarak ayarlanırsa etkilidir.

do_pad (`bool`, *kwargs*, *isteğe bağlı*) : Görselin dolgu (padding) uygulanıp uygulanmayacağını belirtir. Dolgu, ya batch içindeki en büyük boyuta ya da görsel başına sabit bir kare boyuta yapılır. Kesin dolgu stratejisi modele bağlıdır.

pad_size (`Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]`, *kwargs*) : Görsellerin doldurulacağı boyut, `{"height": int, "width" int}` biçiminde. Ön işleme için sağlanan herhangi bir görsel boyutundan büyük olmalıdır. `pad_size` sağlanmazsa, görseller partideki en büyük yüksekliğe ve genişliğe doldurulur. Yalnızca `do_pad=True.` olduğunda uygulanır.

do_center_crop (`bool`, *kwargs*, *opsiyonel*) : Görselin merkezden kırpılıp kırpılmayacağını belirtir.

data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Yalnızca `ChannelDimension.FIRST` desteklenir. Yavaş işleyicilerle uyumluluk için eklendi.

input_data_format (`Union[str, ~image_utils.ChannelDimension]`, *kwargs*, *isteğe bağlı*) : Girdi görüntüsünün kanal boyutu biçimi. Ayarlanmazsa, kanal boyutu biçimi girdi görüntüsünden çıkarılır. Aşağıdakilerden biri olabilir: - `"channels_first"` veya `ChannelDimension.FIRST`: (num_channels, height, width) biçiminde görüntü. - `"channels_last"` veya `ChannelDimension.LAST`: (height, width, num_channels) biçiminde görüntü. - `"none"` veya `ChannelDimension.NONE`: (height, width) biçiminde görüntü.

device (`Annotated[Union[str, torch.device, NoneType], None]`, *kwargs*) : Videoların işleneceği cihaz. Ayarlanmamışsa, cihaz girdi videolarından çıkarılır.

return_tensors (`Annotated[str | ~utils.generic.TensorType | None, None]`, *kwargs*) : `'pt'` olarak ayarlanırsa yığılmış tensörleri, aksi halde tensör listesi döndürür.

disable_grouping (`bool`, *kwargs*, *opsiyonel*) : Görsellerin boyuta göre gruplandırılmasını devre dışı bırakarak bunların toplu olarak değil, tek tek işlenmesini sağlar. None ise, görseller CPU üzerindeyse True, aksi halde False olarak ayarlanır. Bu seçim, buradaki ayrıntılı açıklamalara dayalı ampirik gözlemlere dayanmaktadır: https://github.com/huggingface/transformers/pull/38157

image_seq_length (`int`, *kwargs*, *isteğe bağlı*) : Girdideki her görüntü için kullanılacak görüntü jetonlarının sayısı. Geriye dönük uyumluluk için eklendi ancak bu, gelecekteki modellerde bir işlemci özniteliği olarak ayarlanmalıdır.

repo_path (`str`, *kwargs*, *isteğe bağlı*, varsayılan `shi-labs/oneformer_demo`) : Model metadata içeren yerel bir dizinin veya HuggingFace Hub deposunun yolu.

class_info_file (`str`, *kwargs*, *isteğe bağlı*) : Sınıf meta verilerini içeren, depodaki JSON dosyasının yolu.

num_text (`int`, *kwargs*, *isteğe bağlı*) : Metin kodlayıcı için metin sorgusu sayısı, görev yönlendirmesi olarak kullanılan istemler.

num_labels (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon için sınıfsal sayısını belirler ve çıktı katmanının boyutunu belirler.

ignore_index (`int`, *kwargs*, *isteğe bağlı*) : Segmentasyon haritalarında yok sayılacak etiket, genellikle dolgu (padding) için kullanılır.

do_reduce_labels (`bool`, *kwargs*, *opsiyonel*, varsayılan `False`) : Tüm etiket değerlerini 1 azaltarak arka plan sınıfını `ignore_index` değerine eşleyip eşlemeyeceğini belirtir.

**Dönüş:** `~image_processing_base.BatchFeature`

- **data** (`dict`) -- __call__ yönteminin döndürdüğü listeler/diziler/tensörler sözlüğü ('pixel_values' vb.).
- **tensor_type** (`Union[None, str, TensorType]`, *isteğe bağlı*) -- Başlatma sırasında PyTorch/Numpy Tensörlerindeki tamsayı listelerini dönüştürmek için burada bir tensor_type verebilirsiniz.

#### post_process_semantic_segmentation[[transformers.OneFormerImageProcessorPil.post_process_semantic_segmentation]]

```python
post_process_semantic_segmentation(outputs, target_sizes: list[tuple[int, int]] | None = None, return_segmentation_scores: bool = False)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_pil_oneformer.py#L746)

**Parametreler:**

outputs ([OneFormerForUniversalSegmentation](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerForUniversalSegmentation)) : Modelin ham çıktıları.

target_sizes (`list[tuple[int, int]]`, *isteğe bağlı*) : Uzunluğu (batch_size) olan bir liste, her liste öğesi (`Tuple[int, int]]`) tahminlerin her birinin istenen nihai boyutuna (yükseklik, genişlik) karşılık gelir. None olarak bırakılırsa, tahminler yeniden boyutlandırılmaz.

return_segmentation_scores (`bool`, *isteğe bağlı*, varsayılan `False`) : Segmentasyon haritasının yanı sıra segmentasyon puanlarının da döndürülüp döndürülmeyeceğini belirtir. `True` olduğunda, döndürülen listenin her öğesi `segmentation` (sınıf kimlikleri, şekil `(height, width)`) ve `segmentation_scores` (şekil `(num_classes, height, width)`) alanlarına sahip bir `SemanticSegmentationPostProcessorOutput` nesnesidir.

**Dönüş:** `list[torch.Tensor]` veya `list[SemanticSegmentationPostProcessorOutput]`

`return_segmentation_scores=False` (varsayılan) olduğunda, her öğesi sınıf kimliklerine sahip, `(height, width)` biçiminde bir segmentasyon haritası olan, uzunluğu `batch_size` olan bir liste döndürülür. `return_segmentation_scores=True` olduğunda, `segmentation` (sınıf kimlikleri, `(height, width)` biçimi) ve `segmentation_scores` (`(num_classes, height, width)` biçimi) alanlarına sahip `SemanticSegmentationPostProcessorOutput` nesnelerinden oluşan bir liste döndürülür. Her iki durumda da `(height, width)`, hedef boyuta (`target_sizes` belirtilmişse) karşılık gelir.

[OneFormerForUniversalSegmentation](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerForUniversalSegmentation) çıktısını anlamsal segmentasyon haritalarına dönüştürür. Yalnızca PyTorch desteklenir.

#### post_process_instance_segmentation[[transformers.OneFormerImageProcessorPil.post_process_instance_segmentation]]

```python
post_process_instance_segmentation(outputs, task_type: str = 'instance', is_demo: bool = True, threshold: float = 0.5, mask_threshold: float = 0.5, overlap_mask_area_threshold: float = 0.8, target_sizes: list[tuple[int, int]] | None = None, return_coco_annotation: bool | None = False)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_pil_oneformer.py#L820)

**Parametreler:**

outputs (`OneFormerForUniversalSegmentationOutput`) : `OneFormerForUniversalSegmentationOutput`'dan gelen çıktılar.

task_type (`str`, *isteğe bağlı*, varsayılan "instance") : Son işleme, görev belirteci girdisine bağlıdır. `task_type` "panoptic" ise, stuff tahminlerini yok saymamız gerekir.

is_demo (`bool`, *isteğe bağlı*, varsayılan `True`) : Modelin demo modunda olup olmadığı. Bu değer doğruysa, son maskeleri tahmin etmek için eşik değeri kullanılır.

threshold (`float`, *opsiyonel*, varsayılan 0.5) : Tahmin edilen örnek maskelerini tutmak için olasılık puanı eşiği.

mask_threshold (`float`, *isteğe bağlı*, varsayılan 0.5) : Tahmin edilen maskelerin ikili değerlere dönüştürülürken kullanılacak eşik.

overlap_mask_area_threshold (`float`, *opsiyonel*, varsayılan 0.8) : Her ikili örnek maskesi içindeki küçük, bağlantısı kesik parçaları birleştirmek veya atmak için kullanılan örtüşme maskesi alanı eşiği.

target_sizes (`List[Tuple]`, *isteğe bağlı*) : Uzunluğu (batch_size) olan bir liste, burada her liste öğesi (`Tuple[int, int]]`) batch'teki her tahminin istenen nihai boyutuna (yükseklik, genişlik) karşılık gelir. None olarak bırakılırsa, tahminler yeniden boyutlandırılmaz.

return_coco_annotation (`bool`, *isteğe bağlı*, varsayılan `False`) : Tahminlerin COCO biçiminde döndürülüp döndürülmeyeceğini belirtir.

**Dönüş:** `List[Dict]`

Her biri bir görüntüye ait olan ve her biri iki anahtar içeren sözlüklerden oluşan bir liste:
- **segmentation** -- her pikselin bir `segment_id` temsil ettiği, `(height, width)` biçiminde bir tensör; `threshold` üzerinde bir maske bulunamazsa `None` olarak ayarlanır. `target_sizes` belirtilirse, segmentation, `target_sizes` girdisine göre yeniden boyutlandırılır.
- **segments_info** -- Her segment hakkında ek bilgiler içeren bir sözlük.
  - **id** -- `segment_id`'yi temsil eden bir tamsayır.
  - **label_id** -- `segment_id` ile eşleşen etiket / semantik sınıf kimliğini temsil eden bir tamsayır.
  - **was_fused** -- bir boole değeri, `label_id` `label_ids_to_fuse` içindeyse `True`, aksi halde `False`. Aynı sınıfın / etiketin birden fazla örneği birleştirilip tek bir `segment_id` atandı.
  - **score** -- `segment_id` ile segmentin tahmin skoru.

`OneFormerForUniversalSegmentationOutput` çıktısını görüntü örneği segmentasyonu tahminlerine dönüştürür. Yalnızca PyTorch desteklenir.

#### post_process_panoptic_segmentation[[transformers.OneFormerImageProcessorPil.post_process_panoptic_segmentation]]

```python
post_process_panoptic_segmentation(outputs, threshold: float = 0.5, mask_threshold: float = 0.5, overlap_mask_area_threshold: float = 0.8, label_ids_to_fuse: set[int] | None = None, target_sizes: list[tuple[int, int]] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/image_processing_pil_oneformer.py#L940)

**Parametreler:**

outputs (`MaskFormerForInstanceSegmentationOutput`) : [MaskFormerForInstanceSegmentation](/docs/transformers/main/tr/model_doc/maskformer#transformers.MaskFormerForInstanceSegmentation)'ın çıktıları.

threshold (`float`, *opsiyonel*, varsayılan 0.5) : Tahmin edilen örnek maskelerini tutmak için olasılık puanı eşiği.

mask_threshold (`float`, *isteğe bağlı*, varsayılan 0.5) : Tahmin edilen maskelerin ikili değerlere dönüştürülürken kullanılacak eşik.

overlap_mask_area_threshold (`float`, *opsiyonel*, varsayılan 0.8) : Her ikili örnek maskesi içindeki küçük, bağlantısı kesik parçaları birleştirmek veya atmak için kullanılan örtüşme maskesi alanı eşiği.

label_ids_to_fuse (`Set[int]`, *isteğe bağlı*) : Bu durumdaki etiketlerin tüm örnekleri birleştirilecektir. Örneğin, bir görüntüde yalnızca bir gökyüzü, ancak birden fazla kişi olabileceğini söyleyebiliriz; bu nedenle gökyüzü için etiket kimliği bu kümede yer alırken, kişi için olan yer almaz.

target_sizes (`list[Tuple]`, *isteğe bağlı*) : Uzunluğu (batch_size) olan bir liste, her liste öğesi (`tuple[int, int]]`) batch'teki her tahminin istenen nihai boyutuna (yükseklik, genişlik) karşılık gelir. None olarak bırakılırsa, tahminler yeniden boyutlandırılmaz.

**Dönüş:** `list[Dict]`

Her biri bir görüntüye ait olan ve her biri iki anahtar içeren sözlüklerden oluşan bir liste:
- **segmentation** -- her pikselin bir `segment_id` temsil ettiği, `(height, width)` biçiminde bir tensör; `threshold` üzerinde bir maske bulunamazsa `None` olarak ayarlanır. `target_sizes` belirtilirse, segmentation, `target_sizes` girdisine göre yeniden boyutlandırılır.
- **segments_info** -- Her segment hakkında ek bilgiler içeren bir sözlük.
  - **id** -- `segment_id`'yi temsil eden bir tamsayır.
  - **label_id** -- `segment_id` ile eşleşen etiket / semantik sınıf kimliğini temsil eden bir tamsayır.
  - **was_fused** -- bir boole değeri, `label_id` `label_ids_to_fuse` içindeyse `True`, aksi halde `False`. Aynı sınıfın / etiketin birden fazla örneği birleştirilip tek bir `segment_id` atandı.
  - **score** -- `segment_id` ile segmentin tahmin skoru.

`MaskFormerForInstanceSegmentationOutput` çıktısını görüntü panotik segmentasyon tahminlerine dönüştürür. Yalnızca PyTorch desteklenir.

## OneFormerProcessor[[transformers.OneFormerProcessor]]

#### transformers.OneFormerProcessor[[transformers.OneFormerProcessor]]

```python
transformers.OneFormerProcessor(image_processor = None, tokenizer = None, max_seq_length: int = 77, task_seq_length: int = 77, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/processing_oneformer.py#L27)

**Parametreler:**

image_processor (`OneFormerImageProcessor`) : Görüntü işleyici zorunlu bir girdidir.

tokenizer (`CLIPTokenizer`) : Tokenizer zorunlu bir girdidir.

max_seq_length (`int`, *isteğe bağlı*, varsayılan `77`) : Sınıf adlarını ve metin girdilerini kodlamak için maksimum dizi uzunluğu. Bu parametre, model için sınıf adları ve diğer metin girdilerinin tokenize edilmesi sırasında kullanılan maksimum token sayısını kontrol eder.

task_seq_length (`int`, *opsiyonel*, varsayılan `77`) : Görev açıklamalarını kodlamak için özel olarak kullanılan maksimum dizi uzunluğu. Görev açıklamaları (ör. "görev semantik") bu uzunluk sınırıyla tokenize edilir ve bu, genel metin dizisi uzunluğundan farklı olabilir.

Bir görüntü işleyiciyi ve bir belirteç oluşturucuyu tek bir işleyicide birleştiren bir OneFormerProcessor oluşturur.

[OneFormerProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerProcessor), [OneFormerImageProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor) ve [CLIPTokenizer](/docs/transformers/main/tr/model_doc/clip#transformers.CLIPTokenizer) işlevlerinin tümünü sunar. Daha fazla bilgi için [~OneFormerImageProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor) ve [~CLIPTokenizer](/docs/transformers/main/tr/model_doc/clip#transformers.CLIPTokenizer) belgelerine bakın.

#### __call__[[transformers.OneFormerProcessor.__call__]]

```python
__call__(images = None, task_inputs = None, segmentation_maps = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/processing_oneformer.py#L61)

**Parametreler:**

images (``) : Image to preprocess. Expects a single or batch of images with pixel values ranging from 0 to 255. If passing in images with pixel values between 0 and 1, set `do_rescale=False

task_inputs (`str` veya `list[str]`, *zorunlu*) : Segmentasyon için görev türü veya türleri. `"semantic"`, `"instance"` veya `"panoptic"` değerlerinden biri veya birkaçı olmalıdır. Tek bir görüntü için tek bir dize, toplu işleme için ise bir dize listesi (görüntü başına bir tane) olabilir. Görev türü, modelin girdi görüntülerinde hangi tür segmentasyonu gerçekleştireceğini belirler.

segmentation_maps (`ImageInput`, *isteğe bağlı*) : Piksel bazlı anotasyonlara sahip ilgili semantik segmentasyon haritaları.  (`bool`, *isteğe bağlı*, varsayılan `True`): Görsellerin, bir partideki en büyük görsel boyutuna kadar doldurulup doldurulmayacağı ve bir piksel maskesi oluşturulup oluşturulmayacağı.  Varsayılan değer bırakılırsa, aşağıdaki gibi bir piksel maskesi döndürülür:  - Gerçek (yani **maske uygulanmamış**) pikseller için 1, - Dolgu (yani **maske uygulanmış**) pikseller için 0.

return_tensors (`str` veya [TensorType](/docs/transformers/main/tr/internal/file_utils#transformers.TensorType), *opsiyonel*) : Ayarlanırsa, belirli bir çerçeveye ait tensörleri döndürür. Kabul edilen değerler:  - `'pt'`: PyTorch `torch.Tensor` nesnelerini döndürür. - `'np'`: NumPy `np.ndarray` nesnelerini döndürür.

**Dönüş:** [BatchFeature](/docs/transformers/main/tr/main_classes/feature_extractor#transformers.BatchFeature)

Aşağıdaki alanlara sahip bir [BatchFeature](/docs/transformers/main/tr/main_classes/feature_extractor#transformers.BatchFeature):
- **task_inputs** -- Bir modele verilecek token kimliklerinin listesi. `text` `None` olmadığında döndürülür.
- **pixel_values** -- Bir modele verilecek piksel değerleri. `images` `None` olmadığında döndürülür.

## OneFormerModel[[transformers.OneFormerModel]]

#### transformers.OneFormerModel[[transformers.OneFormerModel]]

```python
transformers.OneFormerModel(config: OneFormerConfig)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/modeling_oneformer.py#L2855)

**Parametreler:**

config ([OneFormerConfig](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerConfig)) : Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için [from_pretrained()](/docs/transformers/main/tr/main_classes/model#transformers.PreTrainedModel.from_pretrained) yöntemine göz atın.

Üzerinde herhangi bir özel head olmadan ham hidden-state çıktısı üreten çıplak Oneformer Model.

Bu model [PreTrainedModel](/docs/transformers/main/tr/main_classes/model#transformers.PreTrainedModel) sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden ayarlama, başları budama vb.) için üst sınıf belgelendirmesine bakın.

Bu model aynı zamanda bir PyTorch [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.

#### forward[[transformers.OneFormerModel.forward]]

```python
forward(pixel_values: Tensor, task_inputs: Tensor, text_inputs: typing.Optional[torch.Tensor] = None, pixel_mask: typing.Optional[torch.Tensor] = None, output_hidden_states: bool | None = None, output_attentions: bool | None = None, return_dict: bool | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/modeling_oneformer.py#L2872)

**Parametreler:**

pixel_values (`torch.Tensor`, şekli `(batch_size, num_channels, image_size, image_size)`) : Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri [OneFormerImageProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [OneFormerImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__) bölümüne bakınız ([OneFormerProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerProcessor), görüntü işleme için [OneFormerImageProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor) kullanır).

task_inputs (`torch.Tensor`, şekli `(batch_size, sequence_length)`) : Görev girdileri. Görev girdileri [AutoImageProcessor](/docs/transformers/main/tr/model_doc/auto#transformers.AutoImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [OneFormerProcessor.__call__()](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerProcessor.__call__) bölümüne bakın.

text_inputs (`list[torch.Tensor]`, *isteğe bağlı*) : Bir modele verilecek, `(num_queries, sequence_length)` biçiminde bir tensör

pixel_mask (`torch.Tensor`, şekli `(batch_size, height, width)`, *isteğe bağlı*) : Dolgu piksel değerleri üzerinde dikkat işleminin uygulanmaması için maske. `[0, 1]` aralığında seçilen maske değerleri:  - Gerçek (yani **maskelenmemiş**) pikseller için 1, - Dolgu (yani **maskelenmiş**) pikseller için 0.  [Dikkat maskeleri nelerdir?](../glossary#attention-mask)

output_hidden_states (`bool`, *isteğe bağlı*) : Tüm katmanların gizli durumlarının (hidden states) döndürülüp döndürülmeyeceğini belirtir. Daha fazla ayrıntı için döndürülen tensörler altındaki `hidden_states` bölümüne bakın.

output_attentions (`bool`, *isteğe bağlı*) : Tüm dikkat katmanlarının dikkat tensörlerinin döndürülüp döndürülmediğini belirtir. Daha fazla ayrıntı için döndürülen tensörler altındaki `attentions` bölümüne bakın.

return_dict (`bool`, *isteğe bağlı*) : Düz bir tuple yerine [ModelOutput](/docs/transformers/main/tr/main_classes/output#transformers.utils.ModelOutput) döndürülecek mi?

**Dönüş:** [OneFormerModelOutput](/docs/transformers/main/tr/model_doc/oneformer#transformers.models.oneformer.modeling_oneformer.OneFormerModelOutput) veya `tuple(torch.Tensor)`

[OneFormerModelOutput](/docs/transformers/main/tr/model_doc/oneformer#transformers.models.oneformer.modeling_oneformer.OneFormerModelOutput) veya bir `torch.Tensor` demeti (eğer `return_dict=False` geçirildiyse veya `config.return_dict=False` ise), yapılandırmaya ([OneFormerConfig](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerConfig)) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

[OneFormerModel](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerModel) forward metodu, `__call__` özel metodunu geçersiz kılar.

İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine `Module` örneğini çağırmak gerekir; çünkü ilki ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.

- **encoder_hidden_states** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) -- `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren, `(batch_size, num_channels, height, width)` biçiminde bir demet. Kodlayıcı modelin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).
- **pixel_decoder_hidden_states** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) -- `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren, `(batch_size, num_channels, height, width)` biçiminde bir demet. Piksel çözücü modelinin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).
- **transformer_decoder_hidden_states** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) -- `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren, `(batch_size, sequence_length, hidden_size)` biçiminde bir demet. Transformer decoder'ın her aşamasının çıktısındaki gizli durumlar (aynı zamanda özellik haritaları olarak da adlandırılır).
- **transformer_decoder_object_queries** (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) -- Transformer decoder'ın son katmanından gelen çıktı nesne sorguları.
- **transformer_decoder_contrastive_queries** (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) -- Transformer decoder'dan gelen kontrastif sorgular.
- **transformer_decoder_mask_predictions** (`torch.Tensor`, şekli `(batch_size, num_queries, height, width)`) -- Transformer decoder'ın son katmanından gelen maske tahminleri.
- **transformer_decoder_class_predictions** (`torch.Tensor`, şekli `(batch_size, num_queries, num_classes+1)`) -- Transformer decoder'ın son katmanından gelen sınıf tahminleri.
- **transformer_decoder_auxiliary_predictions** (`Tuple` of Dict of `str, torch.Tensor`, *isteğe bağlı*) -- Transformer decoder'ın her katmanından gelen sınıf ve maske tahminlerinin tuple'ı.
- **text_queries** (`torch.Tensor`, *isteğe bağlı*, şekli `(batch_size, num_queries, hidden_dim)`) -- Eğitim sırasında kontrastif kaybın hesaplanmasında kullanılan, girdi metin listesinden türetilen metin sorguları.
- **task_token** (`torch.Tensor`, şekli `(batch_size, hidden_dim)`) -- Sorguları koşullandırmak için 1B görev belirteci.
- **attentions** (`tuple(tuple(torch.Tensor))`, *opsiyonel*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `tuple(torch.Tensor)` (her katman için bir tane) içeren bir tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`. Transformer decoder'dan Self ve Cross Attentions ağırlıkları.

Örnek:

```python
>>> import torch
>>> from PIL import Image
>>> from huggingface_hub.utils import httpx
>>> from io import BytesIO
>>> from transformers import OneFormerProcessor, OneFormerModel

>>> # download test image
>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> with httpx.stream("GET", url) as response:
...     image = Image.open(BytesIO(response.read()))

>>> # load processor for preprocessing the inputs
>>> processor = OneFormerProcessor.from_pretrained("shi-labs/oneformer_ade20k_swin_tiny")
>>> model = OneFormerModel.from_pretrained("shi-labs/oneformer_ade20k_swin_tiny")
>>> inputs = processor(image, ["semantic"], return_tensors="pt")

>>> with torch.no_grad():
...     outputs = model(**inputs)

>>> mask_predictions = outputs.transformer_decoder_mask_predictions
>>> class_predictions = outputs.transformer_decoder_class_predictions

>>> f"👉 Mask Predictions Shape: {list(mask_predictions.shape)}, Class Predictions Shape: {list(class_predictions.shape)}"
'👉 Mask Predictions Shape: [1, 150, 128, 171], Class Predictions Shape: [1, 150, 151]'
```

## OneFormerForUniversalSegmentation[[transformers.OneFormerForUniversalSegmentation]]

#### transformers.OneFormerForUniversalSegmentation[[transformers.OneFormerForUniversalSegmentation]]

```python
transformers.OneFormerForUniversalSegmentation(config: OneFormerConfig)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/modeling_oneformer.py#L2991)

**Parametreler:**

config ([OneFormerConfig](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerConfig)) : Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için [from_pretrained()](/docs/transformers/main/tr/main_classes/model#transformers.PreTrainedModel.from_pretrained) yöntemine göz atın.

OneFormer Model, örnek, anlamsal ve panoptik görüntü segmentasyonu için.

Bu model [PreTrainedModel](/docs/transformers/main/tr/main_classes/model#transformers.PreTrainedModel) sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden ayarlama, başları budama vb.) için üst sınıf belgelendirmesine bakın.

Bu model aynı zamanda bir PyTorch [torch.nn.Module](https://pytorch.org/docs/stable/nn.html#torch.nn.Module) alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.

#### forward[[transformers.OneFormerForUniversalSegmentation.forward]]

```python
forward(pixel_values: Tensor, task_inputs: Tensor, text_inputs: typing.Optional[torch.Tensor] = None, mask_labels: list[torch.Tensor] | None = None, class_labels: list[torch.Tensor] | None = None, pixel_mask: typing.Optional[torch.Tensor] = None, output_auxiliary_logits: bool | None = None, output_hidden_states: bool | None = None, output_attentions: bool | None = None, return_dict: bool | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/oneformer/modeling_oneformer.py#L3058)

**Parametreler:**

pixel_values (`torch.Tensor`, şekli `(batch_size, num_channels, image_size, image_size)`) : Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri [OneFormerImageProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [OneFormerImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__) bölümüne bakınız ([OneFormerProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerProcessor), görüntü işleme için [OneFormerImageProcessor](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerImageProcessor) kullanır).

task_inputs (`torch.Tensor`, şekli `(batch_size, sequence_length)`) : Görev girdileri. Görev girdileri [AutoImageProcessor](/docs/transformers/main/tr/model_doc/auto#transformers.AutoImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [OneFormerProcessor.__call__()](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerProcessor.__call__) bölümüne bakın.

text_inputs (`list[torch.Tensor]`, *isteğe bağlı*) : Bir modele verilecek, `(num_queries, sequence_length)` biçiminde bir tensör

mask_labels (`list[torch.Tensor]`, *isteğe bağlı*) : Bir modele verilecek, `(num_labels, height, width)` biçiminde maske etiketleri listesi

class_labels (`list[torch.LongTensor]`, *isteğe bağlı*) : modele verilecek, `(num_labels, height, width)` biçiminde hedef sınıf etiketleri listesi. Bunlar `mask_labels` etiketlerini belirler; örneğin `class_labels[i][j]` ise `mask_labels[i][j]` etiketi.

pixel_mask (`torch.Tensor`, şekli `(batch_size, height, width)`, *isteğe bağlı*) : Dolgu piksel değerleri üzerinde dikkat işleminin uygulanmaması için maske. `[0, 1]` aralığında seçilen maske değerleri:  - Gerçek (yani **maskelenmemiş**) pikseller için 1, - Dolgu (yani **maskelenmiş**) pikseller için 0.  [Dikkat maskeleri nelerdir?](../glossary#attention-mask)

output_auxiliary_logits (`bool`, *isteğe bağlı*) : Yardımcı logitlerin (auxiliary logits) çıktı olarak verilip verilmeyeceğini belirtir.

output_hidden_states (`bool`, *isteğe bağlı*) : Tüm katmanların gizli durumlarının (hidden states) döndürülüp döndürülmeyeceğini belirtir. Daha fazla ayrıntı için döndürülen tensörler altındaki `hidden_states` bölümüne bakın.

output_attentions (`bool`, *isteğe bağlı*) : Tüm dikkat katmanlarının dikkat tensörlerinin döndürülüp döndürülmediğini belirtir. Daha fazla ayrıntı için döndürülen tensörler altındaki `attentions` bölümüne bakın.

return_dict (`bool`, *isteğe bağlı*) : Düz bir tuple yerine [ModelOutput](/docs/transformers/main/tr/main_classes/output#transformers.utils.ModelOutput) döndürülecek mi?

**Dönüş:** [OneFormerForUniversalSegmentationOutput](/docs/transformers/main/tr/model_doc/oneformer#transformers.models.oneformer.modeling_oneformer.OneFormerForUniversalSegmentationOutput) veya `tuple(torch.Tensor)`

[OneFormerForUniversalSegmentationOutput](/docs/transformers/main/tr/model_doc/oneformer#transformers.models.oneformer.modeling_oneformer.OneFormerForUniversalSegmentationOutput) veya bir `torch.Tensor` demeti (`return_dict=False` geçirildiğinde veya `config.return_dict=False` olduğunda); yapılandırma ([OneFormerConfig](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerConfig)) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

[OneFormerForUniversalSegmentation](/docs/transformers/main/tr/model_doc/oneformer#transformers.OneFormerForUniversalSegmentation) forward metodu, `__call__` özel metodunu geçersiz kılar.

İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine `Module` örneğini çağırmak gerekir; çünkü ilki ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.

- **loss** (`torch.Tensor`, *isteğe bağlı*) -- Etiketler mevcut olduğunda döndürülen hesaplanan kayıp.
- **class_queries_logits** (`torch.Tensor`, *isteğe bağlı*) -- Her sorgu için önerilen sınıfları temsil eden, `(batch_size, num_queries, num_labels + 1)` biçiminde bir tensör. `+ 1`'in, null sınıfını dahil ettiğimiz için gerekli olduğunu unutmayın.
- **masks_queries_logits** (`torch.Tensor`, *isteğe bağlı*) -- Her sorgu için önerilen maskeleri temsil eden, `(batch_size, num_queries, height, width)` biçiminde bir tensör.
- **auxiliary_predictions** (`List` of Dict of `str, torch.Tensor`, *isteğe bağlı*) -- Transformer decoder'ın her katmanından gelen sınıf ve maske tahminlerinin listesi.
- **encoder_hidden_states** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) -- `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren, `(batch_size, num_channels, height, width)` biçiminde bir demet. Kodlayıcı modelin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).
- **pixel_decoder_hidden_states** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) -- `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren, `(batch_size, num_channels, height, width)` biçiminde bir demet. Piksel çözücü modelinin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).
- **transformer_decoder_hidden_states** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_hidden_states=True` geçirildiğinde veya `config.output_hidden_states=True` olduğunda döndürülür) -- `torch.Tensor` (gömme çıktısı için bir tane + her aşamanın çıktısı için bir tane) içeren, `(batch_size, sequence_length, hidden_size)` biçiminde bir demet. Transformer decoder'ın her aşamasının çıktısındaki gizli durumlar (aynı zamanda özellik haritaları olarak da adlandırılır).
- **transformer_decoder_object_queries** (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) -- Transformer decoder'ın son katmanından gelen çıktı nesne sorguları.
- **transformer_decoder_contrastive_queries** (`torch.Tensor`, şekli `(batch_size, num_queries, hidden_dim)`) -- Transformer decoder'dan gelen kontrastif sorgular.
- **transformer_decoder_mask_predictions** (`torch.Tensor`, şekli `(batch_size, num_queries, height, width)`) -- Transformer decoder'ın son katmanından gelen maske tahminleri.
- **transformer_decoder_class_predictions** (`torch.Tensor`, şekli `(batch_size, num_queries, num_classes+1)`) -- Transformer decoder'ın son katmanından gelen sınıf tahminleri.
- **transformer_decoder_auxiliary_predictions** (`List` of Dict of `str, torch.Tensor`, *isteğe bağlı*) -- Transformer decoder'ın her katmanından gelen sınıf ve maske tahminlerinin listesi.
- **text_queries** (`torch.Tensor`, *isteğe bağlı*, şekli `(batch_size, num_queries, hidden_dim)`) -- Eğitim sırasında kontrastif kaybın hesaplanmasında kullanılan, girdi metin listesinden türetilen metin sorguları.
- **task_token** (`torch.Tensor`, şekli `(batch_size, hidden_dim)`) -- Sorguları koşullandırmak için 1B görev belirteci.
- **attentions** (`tuple(tuple(torch.Tensor))`, *opsiyonel*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `tuple(torch.Tensor)` (her katman için bir tane) içeren bir tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`. Transformer decoder'dan Self ve Cross Attentions ağırlıkları.

Örnek:

Evrensel segmentasyon örneği:

```python
>>> from transformers import OneFormerProcessor, OneFormerForUniversalSegmentation
>>> from PIL import Image
>>> from huggingface_hub.utils import httpx
>>> from io import BytesIO
>>> import torch

>>> # load OneFormer fine-tuned on ADE20k for universal segmentation
>>> processor = OneFormerProcessor.from_pretrained("shi-labs/oneformer_ade20k_swin_tiny")
>>> model = OneFormerForUniversalSegmentation.from_pretrained("shi-labs/oneformer_ade20k_swin_tiny")

>>> url = (
...     "https://huggingface.co/datasets/hf-internal-testing/fixtures_ade20k/resolve/main/ADE_val_00000001.jpg"
... )
>>> with httpx.stream("GET", url) as response:
...     image = Image.open(BytesIO(response.read()))

>>> # Semantic Segmentation
>>> inputs = processor(image, ["semantic"], return_tensors="pt")

>>> with torch.no_grad():
...     outputs = model(**inputs)
>>> # model predicts class_queries_logits of shape `(batch_size, num_queries)`
>>> # and masks_queries_logits of shape `(batch_size, num_queries, height, width)`
>>> class_queries_logits = outputs.class_queries_logits
>>> masks_queries_logits = outputs.masks_queries_logits

>>> # you can pass them to processor for semantic postprocessing
>>> predicted_semantic_map = processor.post_process_semantic_segmentation(
...     outputs, target_sizes=[(image.height, image.width)]
... )[0]
>>> f"👉 Semantic Predictions Shape: {list(predicted_semantic_map.shape)}"
'👉 Semantic Predictions Shape: [512, 683]'

>>> # Instance Segmentation
>>> inputs = processor(image, ["instance"], return_tensors="pt")

>>> with torch.no_grad():
...     outputs = model(**inputs)
>>> # model predicts class_queries_logits of shape `(batch_size, num_queries)`
>>> # and masks_queries_logits of shape `(batch_size, num_queries, height, width)`
>>> class_queries_logits = outputs.class_queries_logits
>>> masks_queries_logits = outputs.masks_queries_logits

>>> # you can pass them to processor for instance postprocessing
>>> predicted_instance_map = processor.post_process_instance_segmentation(
...     outputs, target_sizes=[(image.height, image.width)]
... )[0]["segmentation"]
>>> f"👉 Instance Predictions Shape: {list(predicted_instance_map.shape)}"
'👉 Instance Predictions Shape: [512, 683]'

>>> # Panoptic Segmentation
>>> inputs = processor(image, ["panoptic"], return_tensors="pt")

>>> with torch.no_grad():
...     outputs = model(**inputs)
>>> # model predicts class_queries_logits of shape `(batch_size, num_queries)`
>>> # and masks_queries_logits of shape `(batch_size, num_queries, height, width)`
>>> class_queries_logits = outputs.class_queries_logits
>>> masks_queries_logits = outputs.masks_queries_logits

>>> # you can pass them to processor for panoptic postprocessing
>>> predicted_panoptic_map = processor.post_process_panoptic_segmentation(
...     outputs, target_sizes=[(image.height, image.width)]
... )[0]["segmentation"]
>>> f"👉 Panoptic Predictions Shape: {list(predicted_panoptic_map.shape)}"
'👉 Panoptic Predictions Shape: [512, 683]'
```

