# Sapiens2

    
        
        
    

## Genel Bakış

Sapiens2 modeli, Rawal Khirodkar, He Wen, Julieta Martinez, Yuan Dong, Zhaoen Su ve Shunsuke Saito tarafından [Sapiens2](https://huggingface.co/papers/2604.21681) makalesinde önerilmiştir. Sapiens2, yaklaşık 1 milyar özenle derlenmiş insan görüntüsü üzerinde ön eğitilmiş, yüksek çözünürlüklü bir vision transformer ailesidir; duruş tahmini, vücut parçası segmentasyonu, yüzey normali tahmini ve pointmap tahmini gibi insan odaklı bilgisayarlı görü görevleri için tasarlanmıştır.

Tüm orijinal Sapiens2 checkpoint'lerini [Sapiens2](https://huggingface.co/collections/facebook/sapiens2) koleksiyonunda bulabilirsiniz.

Makalenin özeti aşağıdaki gibidir:

*Sapiens2'yi sunuyoruz; insan odaklı görüde genelleme, çok yönlülük ve yüksek sadakatli çıktılara odaklanan, yüksek çözünürlüklü bir transformer ailesi. Geliştirilmiş görev etiketlemeleriyle ~1 milyar özenle seçilmiş, yüksek kaliteli insan görüntüsünde ön eğitim yapıyoruz ve hem düşük seviyeli hem de semantik özellikleri öğrenmek için maskeli görüntü yeniden inşasını, kendinden damıtılmış kontrastif hedeflerle birleştiriyoruz. Modellerimiz 0,4B'den 5B parametreye kadar ölçeklenir ve yerel 1K çözünürlükte eğitilir; genişletilmiş uzamsal akıl yürütme için hiyerarşik 4K varyantları mevcuttur. Sapiens2, selefine göre önemli iyileştirmeler sağlar: poz tahmininde +4 mAP, vücut parçası segmentasyonunda +24,3 mIoU ve normal tahmininde %45,6 hata azalması; ayrıca pointmap ve albedo tahmini gibi yeni görevlere genişletilir. Kod herkese açıktır.*

İpuçları:

- Sapiens2, Rotary Position Embeddings (RoPE) kullanır ve keyfi giriş çözünürlüklerini destekler. Varsayılan görüntü işleyici, görüntüleri 1024×768 (yükseklik×genişlik) boyutuna yeniden boyutlandırır.
- Model, orta katmanlar için Grouped Query Attention (GQA) kullanırken, ilk ve son 8 katman için tam çok başlı dikkat (full multi-head attention) kullanır.
- Kayıt token'ları (varsayılan olarak 8 adet), yama token'larındaki yüksek normlu artefaktları azaltarak daha temiz dikkat haritaları ve yoğun tahmin görevlerinde daha iyi performans sağlar.

Bu model [guarin](https://huggingface.co/guarin) tarafından katkıda bulunmuştur. Orijinal kod [burada](https://github.com/facebookresearch/sapiens2) bulunabilir.

## Kullanım örnekleri

Aşağıdaki örnek, [Sapiens2Model](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Model) ile CLS token'ını (tüm görsel gömme) nasıl elde edeceğinizi göstermektedir.

```python
import torch
from transformers import AutoImageProcessor, AutoModel
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pretrain-0.4b")
model = AutoModel.from_pretrained("facebook/sapiens2-pretrain-0.4b", device_map="auto")

inputs = image_processor(images=image, return_tensors="pt").to(model.device)
with torch.inference_mode():
    outputs = model(**inputs)

# outputs.pooler_output is the CLS token (whole-image embedding)
cls_token = outputs.pooler_output
print("CLS token shape:", cls_token.shape)  # [1, 1024]
```

[Sapiens2Backbone](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Backbone), çıktı nesnesinde doğrudan CLS token'larını ve uzamsal boyutlara yeniden şekillendirilmiş yama token'larını açığa çıkarır.

```python
import torch
from transformers import AutoBackbone, AutoImageProcessor
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pretrain-0.4b")
model = AutoBackbone.from_pretrained("facebook/sapiens2-pretrain-0.4b", device_map="auto")

inputs = image_processor(images=image, return_tensors="pt").to(model.device)
with torch.inference_mode():
    outputs = model(**inputs, return_class_token=True)

# Patch tokens shaped (batch, height, width, channels)
patch_features = outputs.feature_maps[0]
cls_token = outputs.cls_tokens[0]
print("CLS token shape:", cls_token.shape)           # [1, 1024]
print("Patch features shape:", patch_features.shape) # [1, 64, 48, 1024]
```

Aşağıdaki örnek, [Sapiens2ForNormalEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForNormalEstimation) ile yüzey normal tahmininin nasıl yapılacağını gösterir. Çıktı normalleri ham (normalize edilmemiş) durumdadır; bunları yeniden boyutlandırmak ve L2-normalize etmek için `post_process_normal_estimation` kullanın.

```python
import torch
from transformers import AutoImageProcessor, AutoModelForNormalEstimation
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-normal-0.4b")
model = AutoModelForNormalEstimation.from_pretrained("facebook/sapiens2-normal-0.4b", device_map="auto")

inputs = image_processor(image, return_tensors="pt").to(model.device)
with torch.inference_mode():
    outputs = model(**inputs)

# outputs.normals shape: (batch_size, 3, height, width) — raw, unnormalized XYZ normals
print("Normals shape:", outputs.normals.shape)  # [1, 3, 1024, 768]

# Remove preprocessing padding, resize to original size, and L2-normalize to unit vectors in [-1, 1]
original_size = (image.height, image.width)
result = image_processor.post_process_normal_estimation(
    outputs, source_sizes=[original_size], target_sizes=[original_size]
)
normals = result[0]["normals"]
print("Normals shape:", normals.shape)   # [3, original_height, original_width]

### Example code for visualization

# Convert L2-normalized normals in [-1, 1] to RGB in [0, 255]
normals_rgb = ((normals + 1.0) / 2.0 * 255.0).clamp(0, 255).to(torch.uint8)

# Apply background removal using the segmentation model output.
# `segmentation` is the output of `post_process_semantic_segmentation` — a (H, W) tensor
# of per-pixel class IDs, where class 0 is background.
background_mask = segmentation == 0
normals_rgb[:, background_mask] = 0
print("Normals RGB shape:", normals_rgb.shape)   # [3, original_height, original_width]
```

Aşağıdaki örnek, [Sapiens2ForPointmapEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForPointmapEstimation) ile piksel başına 3D koordinatların nasıl tahmin edileceğini gösterir. Ön işleme dolgusunu kaldırmak, boyutu orijinal görüntü boyutuna yeniden boyutlandırmak ve tahmin edilen odak uzunluğu ölçeğini uygulamak için `post_process_pointmap_estimation` kullanın.

```python
import torch
from transformers import AutoImageProcessor, AutoModelForPointmapEstimation
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pointmap-0.4b")
model = AutoModelForPointmapEstimation.from_pretrained("facebook/sapiens2-pointmap-0.4b", device_map="auto")

inputs = image_processor(image, return_tensors="pt").to(model.device)
with torch.inference_mode():
    outputs = model(**inputs)

# outputs.pointmaps shape: (batch_size, 3, height, width) — raw XYZ in canonical camera space
print("Pointmaps shape:", outputs.pointmaps.shape)  # [1, 3, 1024, 768]

# Remove preprocessing padding, resize to original size, and apply focal-length scale
original_size = (image.height, image.width)
result = image_processor.post_process_pointmap_estimation(
    outputs, source_sizes=[original_size], target_sizes=[original_size]
)
pointmap = result[0]["pointmap"]
print("Pointmap shape:", pointmap.shape)  # [3, original_height, original_width]

### Example code for visualization

# Visualize the pointmap as an RGB image using inverse-depth and the turbo colormap.
import matplotlib.pyplot as plt

# `segmentation` is the output of `post_process_semantic_segmentation` — a (H, W) tensor
# of per-pixel class IDs, where class 0 is background.
foreground_mask = segmentation != 0
depth = pointmap[2]  # Z channel: depth in camera space, shape (H, W)
pointmap_rgb = torch.zeros(3, *depth.shape, dtype=torch.uint8)
foreground_depth = depth[foreground_mask]
if foreground_depth.numel() > 0:
    depth_low, depth_high = torch.quantile(foreground_depth, torch.tensor([0.01, 0.99]))
    inverse_depth = 1.0 / foreground_depth.clamp(min=1e-6)
    inverse_depth_low = 1.0 / depth_high.clamp(min=1e-6)
    inverse_depth_high = 1.0 / depth_low.clamp(min=1e-6)
    inverse_depth_normalized = ((inverse_depth - inverse_depth_low) / (inverse_depth_high - inverse_depth_low + 1e-8)).clamp(0, 1)
    turbo = plt.get_cmap("turbo")
    foreground_colors = torch.from_numpy(turbo(inverse_depth_normalized.cpu().numpy())[..., :3] * 255).to(torch.uint8)  # (N, 3)
    pointmap_rgb[:, foreground_mask] = foreground_colors.T
print("Pointmap RGB shape:", pointmap_rgb.shape)  # [3, original_height, original_width]
```

Aşağıdaki örnek, [Sapiens2ForPoseEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForPoseEstimation) ile poz tahmini (pose estimation) çalıştırmanın nasıl yapılacağını gösterir. Model, anahtar nokta başına ısı haritaları (heatmap) tahmin eder; bunları görüntü uzayındaki anahtar nokta koordinatlarına geri dönüştürmek için `post_process_pose_estimation` kullanın. Bunun için `opencv-python` (`pip install opencv-python`) gereklidir.

```python
import torch
from transformers import AutoImageProcessor, AutoModelForPoseEstimation
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pose-0.4b")
model = AutoModelForPoseEstimation.from_pretrained("facebook/sapiens2-pose-0.4b", device_map="auto")

# Provide bounding boxes in COCO format (x, y, width, height) for each person
boxes = [[[270.8, 0.6, 294.1, 379.5]]]
inputs = image_processor(image, boxes=boxes, return_tensors="pt").to(model.device)
with torch.inference_mode():
    outputs = model(**inputs)

# outputs.heatmaps shape: (num_persons, num_keypoints, heatmap_height, heatmap_width)
print("Heatmaps shape:", outputs.heatmaps.shape)  # [1, 308, 256, 192]

# Decode heatmaps to image-space keypoint coordinates
results = image_processor.post_process_pose_estimation(outputs, boxes=boxes)[0]
keypoints = results[0]["keypoints"]   # (num_keypoints, 2) — x/y in image coordinates
scores = results[0]["scores"]         # (num_keypoints,) — per-keypoint confidence
print("Keypoints shape:", keypoints.shape)
```

Yatay çevirme artırma (test-time augmentation), orijinal ve aynalanmış görüntüden gelen tahminlerin ortalaması alınarak anahtar nokta doğruluğunu artırır. İkinci ileri geçişe `flip_pairs` — `[left_keypoint, right_keypoint]` çiftlerinden oluşan bir tensör — iletin. Model, ısı haritalarını döndürmeden önce orijinal yönelime geri çevirir, böylece her iki çıktıyı doğrudan ortalamasını alabilirsiniz.

```python
import torch
from transformers import AutoImageProcessor, AutoModelForPoseEstimation
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pose-0.4b")
model = AutoModelForPoseEstimation.from_pretrained("facebook/sapiens2-pose-0.4b", device_map="auto")

boxes = [[[270.8, 0.6, 294.1, 379.5]]]
inputs = image_processor(image, boxes=boxes, return_tensors="pt").to(model.device)
pixel_values = inputs["pixel_values"]

flip_pairs = torch.tensor(model.config.flip_pairs, device=model.device)

with torch.inference_mode():
    outputs = model(pixel_values)
    outputs_flipped = model(pixel_values.flip(-1), flip_pairs=flip_pairs)

results = image_processor.post_process_pose_estimation(outputs, outputs_flipped=outputs_flipped, boxes=boxes)[0]
keypoints = results[0]["keypoints"]
scores = results[0]["scores"]
```

Aşağıdaki örnek, `labels` ve isteğe bağlı `label_weights` parametrelerini geçirerek [Sapiens2ForPoseEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForPoseEstimation) ile denetimli Masked Mean Squared Error (MSE) kaybının nasıl hesaplandığını gösterir. Bu, `Trainer` API'si kullanılarak ince ayar yapmak için faydalıdır.

```python
import torch
from transformers import AutoImageProcessor, AutoModelForPoseEstimation
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pose-0.4b")
model = AutoModelForPoseEstimation.from_pretrained("facebook/sapiens2-pose-0.4b", device_map="auto")

# Provide bounding boxes in COCO format (x, y, width, height) for each person
boxes = [[[270.8, 0.6, 294.1, 379.5]]]
inputs = image_processor(image, boxes=boxes, return_tensors="pt").to(model.device)

# Create dummy labels (heatmaps) and visibility weights to simulate ground truth
# 1.0 for visible keypoints, 0.0 for occluded/invisible keypoints
batch_size, num_keypoints = 1, 308
heatmap_height, heatmap_width = 1024, 768
labels = torch.randn(batch_size, num_keypoints, heatmap_height, heatmap_width, device=model.device)
label_weights = torch.ones(batch_size, num_keypoints, 1, 1, device=model.device)

# Forward pass with loss calculation
outputs = model(**inputs, labels=labels, label_weights=label_weights)

print("Loss:", outputs.loss.item())
```

Aşağıdaki örnek, [Sapiens2ForSemanticSegmentation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForSemanticSegmentation) ile vücut parçası segmentasyonunun nasıl gerçekleştirileceğini göstermektedir.

```python
import torch
from transformers import AutoImageProcessor, AutoModelForSemanticSegmentation
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-seg-0.4b")
model = AutoModelForSemanticSegmentation.from_pretrained("facebook/sapiens2-seg-0.4b", device_map="auto")

inputs = image_processor(image, return_tensors="pt").to(model.device)
with torch.inference_mode():
    outputs = model(**inputs)

# outputs.logits shape: (batch_size, num_labels, height, width)
print("Logits shape:", outputs.logits.shape)  # [1, 29, 1024, 768]

# Get per-pixel class predictions, optionally resized to the original image size
original_size = (image.height, image.width)
segmentation = image_processor.post_process_semantic_segmentation(
    outputs, target_sizes=[original_size]
)[0]
print("Segmentation map shape:", segmentation.shape)  # [original_height, original_width]
```

Aşağıdaki örnek, [Sapiens2ForImageMatting](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForImageMatting) ile görüntü matting'inin nasıl çalıştırılacağını gösterir. Çıktılar sigmoid ile aktive edilmiş ve zaten `[0, 1]` aralığındadır; `post_process_image_matting` işlevini kullanarak boyutlandırıp `alphas`, `foregrounds` ve isteğe bağlı bir `composite` görüntüsüne ayırabilirsiniz. Composite görüntü, formül ile arka plan üzerine bindirilmiş ön planı gösterir: `composite = foreground * (1 - alpha) * background`.

```python
import torch
from transformers import AutoImageProcessor, AutoModelForImageMatting
from transformers.image_utils import load_image

image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")

image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-matting-1b")
model = AutoModelForImageMatting.from_pretrained("facebook/sapiens2-matting-1b", device_map="auto")

inputs = image_processor(image, return_tensors="pt").to(model.device)
with torch.inference_mode():
    outputs = model(**inputs)

# outputs.foregrounds: (1, 3, H, W), outputs.alphas: (1, 1, H, W) — both in [0, 1]
original_size = (image.height, image.width)

# Pass an optional background to composite the foreground over it.
# A (3, 1, 1) tensor broadcasts as a uniform color; PIL images and numpy arrays are also accepted.
background = torch.tensor([0, 177, 64], dtype=torch.uint8).view(3, 1, 1)  # chroma green in RGB
result = image_processor.post_process_image_matting(
    outputs, target_sizes=[original_size], backgrounds=background
)[0]
print("Alpha shape:", result["alpha"].shape)        # [1, original_height, original_width]
print("Foreground shape:", result["foreground"].shape)  # [3, original_height, original_width]
print("Composite shape:", result["composite"].shape)    # [3, original_height, original_width] — uint8 [0, 255]
```

## Sapiens2Config[[transformers.Sapiens2Config]]

#### transformers.Sapiens2Config[[transformers.Sapiens2Config]]

```python
transformers.Sapiens2Config(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, patch_size: int | list[int] | tuple[int, int] = 16, hidden_size: int = 1024, intermediate_size: int = 4096, num_hidden_layers: int = 24, num_attention_heads: int = 16, hidden_act: str = 'silu', attention_dropout: float | int = 0.0, initializer_range: float = 0.02, rope_theta: float = 100.0, image_size: int | list[int] | tuple[int, int] = 224, num_channels: int = 3, query_bias: bool = True, key_bias: bool = True, value_bias: bool = True, proj_bias: bool = True, mlp_bias: bool = True, layerscale_value: float = 1.0, drop_path_rate: float | int = 0.0, use_gated_mlp: bool = True, num_register_tokens: int = 8, pos_embed_shift: float | None = None, pos_embed_jitter: float | None = None, pos_embed_rescale: float | None = 2.0, _out_features: list[str] | None = None, _out_indices: list[int] | None = None, reshape_hidden_states: bool = True, use_mask_token: bool = False, rms_norm_eps: float = 1e-06, normalize_backbone_outputs: bool = True, use_qk_norm: bool = True, num_key_value_heads_per_layer: list[int] | None = None, num_key_value_attention_heads: int = 8, num_first_full_attention_layers: int = 8, num_last_full_attention_layers: int = 8, semantic_loss_ignore_index: int = 255, flip_pairs: list[list[int]] | None = None, head_config: transformers.models.sapiens2.configuration_sapiens2.Sapiens2HeadConfig | dict | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/configuration_sapiens2.py#L116)

**Parametreler:**

patch_size (`Union[int, list[int], tuple[int, int]]`, *isteğe bağlı*, varsayılan `16`) : Her yamanın boyutu (çözünürlüğü).

hidden_size (`int`, *isteğe bağlı*, varsayılan `1024`) : Gizli temsillerin boyutu.

intermediate_size (`int`, *isteğe bağlı*, varsayılan `4096`) : MLP temsillerinin boyutu.

num_hidden_layers (`int`, *isteğe bağlı*, varsayılan `24`) : Transformer decoder'ındaki gizli katman sayısı.

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

hidden_act (`str`, *isteğe bağlı*, varsayılan `silu`) : Dekoderdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin, `"gelu"`, `"relu"`, `"silu"` vb.

attention_dropout (`Union[float, int]`, *isteğe bağlı*, varsayılan `0.0`) : Dikkat olasılıkları için dropout oranı.

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

rope_theta (`float`, *opsiyonel*, varsayılan 100.0) : RoPE gömmelemelerinin temel periyodu.

image_size (`Union[int, list[int], tuple[int, int]]`, *isteğe bağlı*, varsayılan `224`) : Her bir görüntünün boyutu (çözünürlüğü).

num_channels (`int`, *opsiyonel*, varsayılan `3`) : Girdi kanal sayısı.

query_bias (`bool`, *isteğe bağlı*, varsayılan `True`) : Sorgu projeksiyonuna bir sapma (bias) eklenip eklenmeyeceğini belirtir.

key_bias (`bool`, *isteğe bağlı*, varsayılan `False`) : Anahtar projeksiyonuna bir sapma (bias) eklenip eklenmeyeceğini belirtir.

value_bias (`bool`, *isteğe bağlı*, varsayılan `True`) : Değer projeksiyonuna bir sapma (bias) eklenip eklenmeyeceğini belirtir.

proj_bias (`bool`, *isteğe bağlı*, varsayılan `True`) : Çıktı projeksiyonuna bir sapma (bias) eklenip eklenmeyeceğini belirtir.

mlp_bias (`bool`, *isteğe bağlı*, varsayılan `True`) : MLP katmanlarındaki up_proj, down_proj ve gate_proj katmanlarında bias kullanılıp kullanılmayacağı.

layerscale_value (`float`, *isteğe bağlı*, varsayılan 1.0) : Katman ölçeği için kullanılacak başlangıç değeri.

drop_path_rate (`Union[float, int]`, *isteğe bağlı*, varsayılan `0.0`) : Yama birleştirme için drop path oranı.

use_gated_mlp (`bool`, *isteğe bağlı*, varsayılan `False`) : SwiGLU ileri beslemeli sinir ağı kullanılıp kullanılmayacağı.

num_register_tokens (`int`, *isteğe bağlı*, varsayılan 0) : Kayıt belirteçlerinin sayısı.

pos_embed_shift (`float`, *opsiyonel*) : Eğitim modunda ve `None` değilse yalnızca, konum gömme koordinatlarını [-shift, shift] aralığında rastgele kaydırmak için kullanılan miktar.

pos_embed_jitter (`float`, *opsiyonel*) : Eğitim modunda ve `None` değilse yalnızca, [1/jitter, jitter] aralığında log-uniform değer olarak konum gömme koordinatlarını rastgele titreştirmek için kullanılacak miktar.

pos_embed_rescale (`float`, *opsiyonel*, varsayılan 2.0) : Eğitim modunda ve `None` değilse yalnızca, [1/rescale, rescale] aralığında log-uniform değerlerde konum gömme koordinatlarını rastgele yeniden ölçeklemek için kullanılan miktar.

reshape_hidden_states (`bool`, *isteğe bağlı*, varsayılan `True`) : Backbone olarak kullanıldığında gizli durumların (hidden states) uzamsal boyutlara yeniden şekillendirilip şekillendirilmeyeceğini belirtir.

use_mask_token (`bool`, *isteğe bağlı*, varsayılan `False`) : Gömmede maske jetonu kullanılıp kullanılmayacağı (maskeli görüntü modelleme ön eğitimi için gereklidir).

rms_norm_eps (`float`, *opsiyonel*, varsayılan 1e-6) : RMS normalizasyon katmanları için epsilon.

normalize_backbone_outputs (`bool`, *isteğe bağlı*, varsayılan `True`) : İleri yönlü geçişten döndürülmeden önce, omurga `feature_maps` ve `cls_tokens` çıktılarının RMSNorm uygulanıp uygulanmayacağını belirtir. Yalnızca model bir omurga olarak kullanıldığında geçerlidir.

use_qk_norm (`bool`, *isteğe bağlı*, varsayılan `True`) : Dikkat katmanlarında RoPE'den önce sorgulara ve anahtarlara RMSNorm uygulanıp uygulanmayacağı.

num_key_value_heads_per_layer (`list[int]`, *isteğe bağlı*) : Her transformer katmanı için anahtar/değer baş sayısı. Bir katmanın değerini `num_attention_heads` ile eşitlemek tam çok başlı dikkat (full multi-head attention) sağlar; daha küçük bir değer gruplu sorgu dikkati (grouped-query attention) sağlar. İlk `num_first_full_attention_layers` ve son `num_last_full_attention_layers` katmanlar için varsayılan değer `num_attention_heads`, diğer tüm katmanlar için ise `num_key_value_attention_heads`'tir.

num_key_value_attention_heads (`int`, *isteğe bağlı*, varsayılan `8`) : `num_key_value_heads_per_layer` ayarlanmadığında, gruplu sorgu dikkati kullanan katmanlar için anahtar/değer baş sayısı. `num_key_value_heads_per_layer` ayarlandığında yok sayılır.

num_first_full_attention_layers (`int`, *isteğe bağlı*, varsayılan 8) : Tam çok başlı dikkat kullanan öndeki transformer katmanlarının sayısı. Yalnızca `num_key_value_heads_per_layer` `None` olduğunda kullanılır.

num_last_full_attention_layers (`int`, *isteğe bağlı*, varsayılan 8) : Tam çok başlı dikkat kullanan son transformer katmanlarının sayısı. Yalnızca `num_key_value_heads_per_layer` `None` olduğunda kullanılır.

semantic_loss_ignore_index (`int`, *isteğe bağlı*, varsayılan 255) : Segmentasyon kaybı hesaplanırken yok sayılan etiket indeksi.

flip_pairs (`list[list[int]]`, *isteğe bağlı*) : Yatay olarak aynalanan anahtar nokta indekslerinin çiftleri (ör. sol kulak ↔ sağ kulak). Her çift, iki elemanlı bir listedir: `[left_index, right_index]`. Poz tahmininde test zamanı yatay çevirme artırma (augmentation) için kullanılır: modelin ısı haritalarını döndürmeden önce geri çevirmesi için bu çiftleri ikinci ileri çağrıya (forward call) iletin.

head_config (`Sapiens2HeadConfig`, *isteğe bağlı*) : Çözümleme başı için yapılandırma. Kullanılabilir seçenekler için [Sapiens2HeadConfig](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2HeadConfig) bölümüne bakın.

Bu, bir Sapiens2Model yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Sapiens2 modelini örneklemek ve model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, [facebook/sapiens2-pretrain-0.4b](https://huggingface.co/facebook/sapiens2-pretrain-0.4b) modelinin yapılandırmasına benzer bir yapılandırma üretir.

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.

## Sapiens2HeadConfig[[transformers.Sapiens2HeadConfig]]

#### transformers.Sapiens2HeadConfig[[transformers.Sapiens2HeadConfig]]

```python
transformers.Sapiens2HeadConfig(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, upsample_out_channels: list[int] | None = None, upsample_kernel_sizes: list[int] | None = None, upsample_kernel_size: int = 4, use_pixel_shuffle: bool | None = None, conv_out_channels: list[int] | None = None, conv_kernel_sizes: list[int] | None = None, conv_kernel_size: int = 1, scale_conv_out_channels: list[int] | None = None, scale_conv_kernel_sizes: list[int] | None = None, scale_conv_kernel_size: int = 1, scale_final_input_size: int | None = None, scale_final_hidden_sizes: list[int] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/configuration_sapiens2.py#L28)

**Parametreler:**

upsample_out_channels (`list[int]`, *isteğe bağlı*) : Her upsample bloğu için çıktı kanal sayıları. İlk blok girdi olarak `hidden_size` kanalını alır; sonraki bloklar önceki çıktıyı kullanır.

upsample_kernel_sizes (`list[int]`, *isteğe bağlı*) : Her upsample bloğu için çekirdek boyutu. `upsample_out_channels` ayarlanmış ancak bu `None` ise `[4, ...]` ile otomatik doldurulur. `upsample_out_channels` ile aynı uzunlukta olmalıdır.

upsample_kernel_size (`int`, varsayılan 4) : `upsample_kernel_sizes` ayarlanmadığında upsample blokları için varsayılan çekirdek boyutu.

use_pixel_shuffle (`bool`, *isteğe bağlı*) : Upsample başlığının transpoze konvolüsyonlar yerine pixel-shuffle upsampling kullanıp kullanmadığını belirtir. `None` (varsayılan) olduğunda, başlık transpoze konvolüsyonlar kullanır.

conv_out_channels (`list[int]`, *isteğe bağlı*) : Upsample bloklarını takip eden refinement conv katmanları için çıktı kanal sayıları.

conv_kernel_sizes (`list[int]`, *isteğe bağlı*) : Her rafineleme konvolüsyon katmanı için çekirdek boyutu. `conv_out_channels` ayarlandığında ancak bu `None` olduğunda `[1, ...]` ile otomatik doldurulur. `conv_out_channels` ile aynı uzunlukta olmalıdır.

conv_kernel_size (`int`, varsayılan 1) : `conv_kernel_sizes` ayarlanmadığında conv katmanları için varsayılan çekirdek boyutu.

scale_conv_out_channels (`list[int]`, *isteğe bağlı*) : Odak uzunluğu ölçeğini tahmin etmek için kullanılan stride-2 konvolüsyon katmanlarının çıktı kanal sayıları. `None` (varsayılan) olduğunda, ölçek dalı oluşturulmaz.

scale_conv_kernel_sizes (`list[int]`, *isteğe bağlı*) : Her ölçek konvolüsyon katmanı için çekirdek boyutu. `scale_conv_out_channels` ayarlanmış ancak bu `None` ise `[1, ...]` ile otomatik doldurulur. `scale_conv_out_channels` ile aynı uzunlukta olmalıdır.

scale_conv_kernel_size (`int`, varsayılan 1) : `scale_conv_kernel_sizes` ayarlanmadığında, ölçekleme katmanları için varsayılan çekirdek boyutu.

scale_final_input_size (`int`, *isteğe bağlı*) : Ölçek MLP'sine aktarılan düzleştirilmiş özellik boyutu. `None` (varsayılan) olduğunda, üst düzey [Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config) içindeki `image_size` ve `patch_size` değerlerinden otomatik olarak çıkarılır.

scale_final_hidden_sizes (`list[int]`, *isteğe bağlı*) : Düzleştirilmiş ölçek özelliklerini skaler ölçek çıktısına eşleyen MLP için gizli katman boyutları. `None` (varsayılan) olduğunda, ölçek dalı oluşturulmaz.

Bu, bir Sapiens2Model yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Sapiens2 modelini örneklemek ve model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, [facebook/sapiens2-seg-0.4b](https://huggingface.co/facebook/sapiens2-seg-0.4b) modelinin yapılandırmasına benzer bir yapılandırma üretir.

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.

## Sapiens2ImageProcessor[[transformers.Sapiens2ImageProcessor]]

#### transformers.Sapiens2ImageProcessor[[transformers.Sapiens2ImageProcessor]]

```python
transformers.Sapiens2ImageProcessor(**kwargs: *<class 'transformers.models.sapiens2.image_processing_sapiens2.Sapiens2ImageProcessorKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/image_processing_sapiens2.py#L407)

**Parametreler:**

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*, *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 `{'height' : 1024, 'width': 768}`): Modelin kabul ettiği maksimum giriş boyutlarını açıklar.

default_to_square (`bool`, *kwargs*, *opsiyonel*, varsayılan `True`) : 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*, varsayılan `{'height' : 224, 'width': 224}`): `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*, *opsiyonel*, varsayılan `False`) : 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*, varsayılan `False`) : 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.

do_reduce_labels (`bool`, *kwargs*, *opsiyonel*, varsayılan `self.do_reduce_labels`) : Segmentasyon haritalarındaki tüm etiket değerlerinin 1 azaltılacak mı. Genellikle 0'ın arka plan için kullanıldığı ve arka planın bir veri setindeki tüm sınıflara dahil olmadığı veri setlerinde (ör. ADE20k) kullanılır. Arka plan etiketi 255 ile değiştirilecektir.

keypoint_heatmap_downscale_factor (`int`, *kwargs*, *opsiyonel*, varsayılan 4) : Model giriş boyutuna göre hedef ısı haritası boyutu için küçültme faktörü.

keypoint_heatmap_sigma (`float`, *kwargs*, *opsiyonel*, varsayılan 6.0) : Isı haritalarını üretmek için kullanılan 2B Gauss dağılımlarının standart sapması (sigma).

Sapiens2ImageProcessor görüntü işleyicisi oluşturur.

#### preprocess[[transformers.Sapiens2ImageProcessor.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']], 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, boxes: list[list[list[float]]] | None = None, keypoints: list[list[list[list[float]]]] | None = None, **kwargs: *<class 'transformers.models.sapiens2.image_processing_sapiens2.Sapiens2ImageProcessorKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/image_processing_sapiens2.py#L430)

**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.

segmentation_maps (`ImageInput`, *isteğe bağlı*) : Ön işleme tabi tutulacak segmentasyon haritaları.

boxes (`list[list[list[float]]]` veya `np.ndarray`, *isteğe bağlı*) : Her görüntü için sınırlayıcı kutuların listesi veya dizisi. Her kutu, COCO biçiminde sınırlayıcı kutu koordinatlarını (top_left_x, top_left_y, width, height) temsil eden 4 kayan noktalı sayıdan oluşan bir liste olmalıdır. Sağlandığında, tam görüntünün yeniden boyutlandırılması yerine her kişi kırpma, model giriş boyutuna afin dönüşüm uygulanarak ayarlanır.

keypoints (`list[list[list[list[float]]]]`, *isteğe bağlı*) : Her görüntüdeki her kişi için anahtar nokta listesi. Beklenen biçim COCO tarzı `[x, y, visibility]`'dir. `x` ve `y` değerlerinin mutlak görüntü piksel koordinatları olması beklenir. Biçim `[images -> persons -> keypoints -> [x, y, visibility]]`'tir. Durum tahmini (pose estimation) için ince ayar sırasında yer doğruluğu (ground-truth) ısı haritalarını ve görünürlük ağırlıklarını üretmek için kullanılır.

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.

do_reduce_labels (`bool`, *kwargs*, *opsiyonel*, varsayılan `self.do_reduce_labels`) : Segmentasyon haritalarındaki tüm etiket değerlerinin 1 azaltılacak mı. Genellikle 0'ın arka plan için kullanıldığı ve arka planın bir veri setindeki tüm sınıflara dahil olmadığı veri setlerinde (ör. ADE20k) kullanılır. Arka plan etiketi 255 ile değiştirilecektir.

keypoint_heatmap_downscale_factor (`int`, *kwargs*, *opsiyonel*, varsayılan 4) : Model giriş boyutuna göre hedef ısı haritası boyutu için küçültme faktörü.

keypoint_heatmap_sigma (`float`, *kwargs*, *opsiyonel*, varsayılan 6.0) : Isı haritalarını üretmek için kullanılan 2B Gauss dağılımlarının standart sapması (sigma).

**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_image_matting[[transformers.Sapiens2ImageProcessor.post_process_image_matting]]

```python
post_process_image_matting(outputs, target_sizes: transformers.utils.generic.TensorType | list[tuple[int, int]] | None = None, backgrounds: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor'], NoneType] = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/image_processing_sapiens2.py#L891)

**Parametreler:**

outputs (`Sapiens2ImageMattingOutput`) : Modelin ham çıktıları.

target_sizes (`torch.Tensor` veya `batch_size` uzunluğunda `list[tuple[int, int]]`, *isteğe bağlı*) : Her tahmin için istenen nihai `(height, width)`. Çift doğrusal interpolasyonla yeniden boyutlandırılır. Ayarlanmazsa, tahminler model çıktı çözünürlüğünde döndürülür.

backgrounds (`ImageInput`, *isteğe bağlı*) : Üzerine kompozit oluşturulacak arka plan görüntüsü(leri). Tek bir görüntü (toplumdaki her öğeye uygulanır) veya toplumdaki her öğe için bir görüntüden oluşan bir liste olabilir. Herhangi bir veri türüne sahip PIL görüntüleri, numpy dizileri veya torch tensörlerini kabul eder; tamsayı türleri (ör. uint8) otomatik olarak `[0, 1]` aralığına ölçeklenir. Sağlandığında, her sonuç sözlüğüne kompozit görüntünün `[0, 255]` aralığında bir uint8 tensörü olarak yer aldığı `"composite"` anahtarı eklenir.

**Dönüş:** `list[dict]`, uzunluğu `batch_size`. Her dict

- `"alpha"` (`torch.Tensor`, şekli `(1, height, width)`): `[0, 1]` aralığındaki alpha değerleri.
- `"foreground"` (`torch.Tensor`, şekli `(3, height, width)`): `[0, 1]` aralığında, ön çarpılmış RGB.
- `"composite"` (`torch.Tensor`, şekli `(3, height, width)` veya `None`): `backgrounds` üzerine birleştirilmiş ön plan, `[0, 255]` aralığında bir uint8 tensörü; `backgrounds` sağlanmadığında `None`.

[Sapiens2ForImageMatting](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForImageMatting) çıktısını alfa matlarına ve ön plan haritalarına dönüştürür.

#### post_process_normal_estimation[[transformers.Sapiens2ImageProcessor.post_process_normal_estimation]]

```python
post_process_normal_estimation(outputs, source_sizes: transformers.utils.generic.TensorType | list[tuple[int, int]] | None = None, target_sizes: transformers.utils.generic.TensorType | list[tuple[int, int]] | None = None, do_remove_padding: bool | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/image_processing_sapiens2.py#L818)

**Parametreler:**

outputs (`Sapiens2NormalEstimatorOutput`) : Modelin ham çıktıları.

source_sizes (`torch.Tensor` veya `batch_size` uzunluğunda `list[tuple[int, int]]`, *isteğe bağlı*) : Ön işleme yapılmadan önce her bir görüntünün orijinal `(height, width)` boyutu. Sağlandığında, ön işleme sırasında eklenen dolgu kaldırılır ve tahminler orijinal görüntü boyutuna yeniden boyutlandırılır (`target_sizes` nihai boyutu geçersiz kılmadığı sürece).

target_sizes (`torch.Tensor` veya `batch_size` uzunluğunda `list[tuple[int, int]]`, *isteğe bağlı*) : Her tahmin için istenen nihai `(height, width)`. Verildiğinde, `source_sizes` yerine yeniden boyutlandırma hedefi olarak kullanılır. L2 normalizasyonundan sonra ikili doğrusal interpolasyonla yeniden boyutlandırılır.

do_remove_padding (`bool`, *isteğe bağlı*) : Yeniden boyutlandırılmadan önce ön işleme sırasında eklenen sıfır dolgularının kırpilip kırpılmayacağını belirtir. `source_sizes` sağlandığında varsayılan olarak `True`, aksi takdirde `False` değerini alır.

**Dönüş:**

`list[dict[str, torch.Tensor]]`, uzunluğu `batch_size`. Her dict, `"normals"` anahtarına sahip olup bu anahtar, her kanal için (XYZ yüzey normalleri) `[-1, 1]` aralığında L2-normalize edilmiş birim vektörler içeren `(3, height, width)` biçiminde bir tensöre eşlenir.

[Sapiens2ForNormalEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForNormalEstimation) çıktısını L2-normalize edilmiş yüzey normal haritalarına dönüştürür.

#### post_process_pointmap_estimation[[transformers.Sapiens2ImageProcessor.post_process_pointmap_estimation]]

```python
post_process_pointmap_estimation(outputs, source_sizes: transformers.utils.generic.TensorType | list[tuple[int, int]] | None = None, target_sizes: transformers.utils.generic.TensorType | list[tuple[int, int]] | None = None, do_remove_padding: bool | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/image_processing_sapiens2.py#L854)

**Parametreler:**

outputs (`Sapiens2PointmapEstimatorOutput`) : Modelin ham çıktıları.

source_sizes (`torch.Tensor` veya `batch_size` uzunluğunda `list[tuple[int, int]]`, *isteğe bağlı*) : Ön işleme yapılmadan önce her bir görüntünün orijinal `(height, width)` boyutu. Sağlandığında, ön işleme sırasında eklenen dolgu kaldırılır ve tahminler orijinal görüntü boyutuna yeniden boyutlandırılır (`target_sizes` nihai boyutu geçersiz kılmadığı sürece).

target_sizes (`torch.Tensor` veya `batch_size` uzunluğunda `list[tuple[int, int]]`, *isteğe bağlı*) : Her tahmin için istenen nihai `(height, width)`. Yeniden boyutlandırma hedefi olarak `source_sizes` değerini geçersiz kılar.

do_remove_padding (`bool`, *isteğe bağlı*) : Yeniden boyutlandırılmadan önce ön işleme sırasında eklenen sıfır dolgularının kırpilip kırpılmayacağını belirtir. `source_sizes` sağlandığında varsayılan olarak `True`, aksi takdirde `False` değerini alır.

**Dönüş:**

`list[dict[str, torch.Tensor]]`, uzunluğu `batch_size`. Her dict, `"pointmap"` anahtarına sahip olup, bu anahtar standart kamera uzayında piksel başına 3B XYZ koordinatlarını içeren `(3, height, width)` biçiminde bir tensöre eşlenir; metrik koordinatlara dönüştürmek için isteğe bağlı olarak `outputs.scales` ile bölünebilir.

[Sapiens2ForPointmapEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForPointmapEstimation) çıktısını görüntü uzayındaki pointmap tensörlerine dönüştürür.

#### post_process_pose_estimation[[transformers.Sapiens2ImageProcessor.post_process_pose_estimation]]

```python
post_process_pose_estimation(outputs, boxes: list, outputs_flipped = None, kernel_size: int = 11, threshold: float | None = None, source_sizes: transformers.utils.generic.TensorType | list[tuple[int, int]] | None = None, target_sizes: transformers.utils.generic.TensorType | list[tuple[int, int]] | None = None)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/image_processing_sapiens2.py#L676)

**Parametreler:**

outputs (`Sapiens2PoseEstimatorOutput`) : Modelin ham çıktıları. `outputs.heatmaps` biçimi `(N_total, num_keypoints, heatmap_height, heatmap_width)` olmalıdır; burada `N_total = sum(len(b) for b in boxes)`.

boxes (`list[list[list[float]]]` veya `np.ndarray`) : Mutlak piksel koordinatlarında, her görüntü için sınırlayıcı kutuların listesi veya dizisi. Her kutu, COCO biçiminde (top_left_x, top_left_y, width, height) sınırlayıcı kutu koordinatlarını temsil eden 4 float içeren bir liste olmalıdır. `preprocess` fonksiyonuna geçirilen `boxes` argümanıyla eşleşmelidir.

outputs_flipped (`Sapiens2PoseEstimatorOutput`, *isteğe bağlı*) : Modelin yatay olarak ters çevrilmiş girdiler üzerinde çalıştırılmasından elde edilen çıktılar. Sağlandığında, anahtar nokta çıkarımı öncesinde doğruluğu artırmak için ısı haritaları `outputs` ile ortalama alınır: `avg_heatmaps = (outputs.heatmaps + outputs_flipped.heatmaps) / 2`.

kernel_size (`int`, *isteğe bağlı*, varsayılan 11) : UDP Dark Pose iyileştirmesinde kullanılan Gauss bulanıklığı için çekirdek boyutu.

threshold (`float`, *isteğe bağlı*) : Skor eşiği. Bu değere eşit veya daha düşük skora sahip anahtar noktalar, sonuç sözlüklerinden filtrelenir.

source_sizes (`torch.Tensor` veya `batch_size` uzunluğunda `list[tuple[int, int]]`, *isteğe bağlı*) : Piksel cinsinden her bir görüntünün orijinal `(height, width)` boyutu. `target_sizes` sağlandığında, anahtar noktaları ve sınırlayıcı kutuları ölçeklendirmek için kaynak koordinat uzayı olarak gereklidir.

target_sizes (`torch.Tensor` veya `batch_size` uzunluğunda `list[tuple[int, int]]`, *isteğe bağlı*) : Her görüntü için istenen çıktı `(height, width)` koordinat uzayı. `source_sizes` ile birlikte sağlandığında, anahtar nokta koordinatları ve sınırlayıcı kutular kaynak uzaydan hedef uzaya ölçeklenir.

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

Dış liste görüntüler üzerinde, iç liste kişiler üzerinde dolaşır. Her sözlük şunları içerir:
- `keypoints` (`torch.Tensor`, şekli `(num_keypoints, 2)`): kaynak görüntü uzayındaki mutlak x/y koordinatları veya `target_sizes` sağlanırsa hedef uzaydaki koordinatlar.
- `scores` (`torch.Tensor`, şekli `(num_keypoints,)`): nokta başına güven skoru.
- `labels` (`torch.LongTensor`, şekli `(num_keypoints,)`): anahtar nokta indeksleri.
- `bbox` (`torch.Tensor`, şekli `(4,)`): mutlak (x_min, y_min, x_max, y_max) biçiminde, `keypoints` ile aynı koordinat uzayında sınırlayıcı kutu.

[Sapiens2ForPoseEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForPoseEstimation) çıktısını görüntü uzayındaki anahtar nokta tahminlerine dönüştürür.

#### post_process_semantic_segmentation[[transformers.Sapiens2ImageProcessor.post_process_semantic_segmentation]]

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

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/image_processing_sapiens2.py#L610)

**Parametreler:**

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

target_sizes (`list[Tuple]`, uzunluğu `batch_size`, *isteğe bağlı*) : Her tahminin istenen nihai boyutuna (yükseklik, genişlik) karşılık gelen demetlerin listesi. Ayarlanmazsa, 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.

[Sapiens2ForSemanticSegmentation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForSemanticSegmentation) çıktısını anlamsal segmentasyon haritalarına dönüştürür.

## Sapiens2Model[[transformers.Sapiens2Model]]

#### transformers.Sapiens2Model[[transformers.Sapiens2Model]]

```python
transformers.Sapiens2Model(config: Sapiens2Config)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L867)

**Parametreler:**

config ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) : 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 bakın.

Üzerinde herhangi bir özel head olmadan ham hidden-state çıktısı üreten çıplak Sapiens2 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.Sapiens2Model.forward]]

```python
forward(pixel_values: Tensor, bool_masked_pos: typing.Optional[torch.Tensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L880)

**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 [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [Sapiens2ImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__)'a bakın (`processor_class`, görüntü işleme için [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanır).

bool_masked_pos (`torch.BoolTensor`, şekli `(batch_size, sequence_length)`, *isteğe bağlı*) : Boole maskeli konumlar. Hangi yamaların maskelendiğini (1) ve hangilerinin maskelenmediğini (0) belirtir. Yalnızca ön eğitim için geçerlidir.

**Dönüş:** [BaseModelOutputWithPooling](/docs/transformers/main/tr/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPooling) veya `tuple(torch.Tensor)`

[BaseModelOutputWithPooling](/docs/transformers/main/tr/main_classes/output#transformers.modeling_outputs.BaseModelOutputWithPooling) veya bir `torch.Tensor` demeti (eğer `return_dict=False` geçirildiyse veya `config.return_dict=False` ise), yapılandırma ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

[Sapiens2Model](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Model) 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.

- **last_hidden_state** (`torch.Tensor`, şekli `(batch_size, sequence_length, hidden_size)`) -- Modelin son katmanının çıktısındaki gizli durumlar dizisi.
- **pooler_output** (`torch.Tensor`, şekli `(batch_size, hidden_size)`) -- Sıralamanın ilk token'ının (sınıflandırma token'ı) son katman gizli durumu, yardımcı ön eğitim görevi için kullanılan katmanlardan geçirildikten sonraki hali. Örneğin BERT ailesi modelleri için, bu, sınıflandırma token'ının doğrusal bir katman ve tanh aktivasyon fonksiyonundan geçirildikten sonraki halini döndürür. Doğrusal katman ağırlıkları, ön eğitim sırasında bir sonraki cümle tahmini (sınıflandırma) hedefinden eğitilir.
- **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 katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için bir tane) içeren, `(batch_size, sequence_length, hidden_size)` biçiminde bir demet.

  Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
- **attentions** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `torch.Tensor` (her katman için bir tane) içeren bir tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`.

  Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat kafalarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

Örnek:

```python
>>> from transformers import AutoImageProcessor, AutoModel
>>> from transformers.image_utils import load_image
>>> import torch

>>> image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")
>>> image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pretrain-0.4b")
>>> model = AutoModel.from_pretrained("facebook/sapiens2-pretrain-0.4b")

>>> inputs = image_processor(images=image, return_tensors="pt")
>>> with torch.inference_mode():
...     outputs = model(**inputs)

>>> cls_token = outputs.pooler_output
>>> cls_token.shape
torch.Size([1, 1024])
```

## Sapiens2Backbone[[transformers.Sapiens2Backbone]]

#### transformers.Sapiens2Backbone[[transformers.Sapiens2Backbone]]

```python
transformers.Sapiens2Backbone(config: Sapiens2Config)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L929)

**Parametreler:**

config ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) : 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 bakın.

Sapiens2 omurgası.

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.Sapiens2Backbone.forward]]

```python
forward(pixel_values: Tensor, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L942)

**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 [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [Sapiens2ImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__)'a bakın (`processor_class`, görüntü işleme için [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanır).

**Dönüş:** `Sapiens2BackboneOutput` veya `tuple(torch.Tensor)`

`Sapiens2BackboneOutput` veya bir `torch.Tensor` demeti (`return_dict=False` geçirildiğinde veya `config.return_dict=False` olduğunda), yapılandırmaya ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

[Sapiens2Backbone](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Backbone) 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.

- **feature_maps** (`tuple(torch.Tensor)`, şekli `(batch_size, num_channels, height, width)`) -- Aşamaların özellik haritaları.
- **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 katman çıktısı için bir tane) içeren bir tuple, boyutu `(batch_size, sequence_length, hidden_size)` veya `(batch_size, num_channels, height, width)`, iskelete (backbone) göre değişir.

  Modelin her aşamanın çıktısındaki gizli durumları ve başlangıç gömme çıktıları.
- **attentions** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `torch.Tensor` (her katman için bir tane) içeren bir tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`. Yalnızca omurga dikkat (attention) kullanıyorsa geçerlidir.

  Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat kafalarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
- **cls_tokens** (`tuple(torch.Tensor)`, *isteğe bağlı*) -- Seçilen her özellik aşamasından gelen CLS token'ı, her biri `(batch_size, hidden_size)` biçiminde. Yalnızca `config.return_class_token=True` olduğunda mevcuttur.

Örnek:

```python
>>> from transformers import AutoBackbone, AutoImageProcessor
>>> from transformers.image_utils import load_image
>>> import torch

>>> image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")
>>> image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pretrain-0.4b")
>>> model = AutoBackbone.from_pretrained("facebook/sapiens2-pretrain-0.4b")

>>> inputs = image_processor(images=image, return_tensors="pt")
>>> with torch.inference_mode():
...     outputs = model(**inputs, return_class_token=True)

>>> outputs.feature_maps[0].shape
torch.Size([1, 1024, 64, 48])
>>> outputs.cls_tokens[0].shape
torch.Size([1, 1024])
```

## Sapiens2ForImageMatting[[transformers.Sapiens2ForImageMatting]]

#### transformers.Sapiens2ForImageMatting[[transformers.Sapiens2ForImageMatting]]

```python
transformers.Sapiens2ForImageMatting(config: Sapiens2Config)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1365)

**Parametreler:**

config ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) : 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 bakın.

Üstünde bir matting başlığı bulunan Sapiens2 modeli (önceden çarpılmış RGB bir ön plan ve alfa matı tahmin eden, PixelShuffle tabanlı bir çözücü).

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.Sapiens2ForImageMatting.forward]]

```python
forward(pixel_values: Tensor, labels: typing.Optional[torch.Tensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1372)

**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 [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [Sapiens2ImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__)'a bakın (`processor_class`, görüntü işleme için [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanır).

labels (`torch.Tensor`, şekli `(batch_size, 4, height, width)`, *isteğe bağlı*) : Kayıp (loss) hesaplamak için kullanılan gerçek (ground-truth) matting hedefleri.

**Dönüş:** `Sapiens2ImageMattingOutput` veya `tuple(torch.Tensor)`

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

[Sapiens2ForImageMatting](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForImageMatting) 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`, şekli `(1,)`, *isteğe bağlı*, `labels` sağlandığında döndürülür) -- Kayıp.
- **alphas** (`torch.Tensor`, şekli `(batch_size, 1, height, width)`) -- Tahmini alfa değerleri.
- **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` (modelin bir gömme katmanı varsa gömme katmanının çı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)`. Modelin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).
- **attentions** (`tuple[torch.Tensor]`, *isteğe bağlı*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `(batch_size, num_heads, sequence_length, sequence_length)` biçiminde, her katman için bir adet içeren `torch.Tensor` demeti.

  Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat kafalarında ağırlıklı ortalamanın hesaplanmasında kullanılır.
- **foregrounds** (`torch.Tensor`, şekli `(batch_size, 3, height, width)`) -- `[0, 1]` aralığında (sigmoid ile aktive edilmiş) ön çarpılmış RGB ön plan tahminleri.

Örnek:

```python
>>> from transformers import AutoImageProcessor, AutoModel
>>> from transformers.image_utils import load_image
>>> import torch

>>> image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")
>>> image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-matting-1b")
>>> model = AutoModel.from_pretrained("facebook/sapiens2-matting-1b")

>>> inputs = image_processor(image, return_tensors="pt")
>>> with torch.inference_mode():
...     outputs = model(**inputs)

>>> outputs.alphas.shape
torch.Size([1, 1, 1024, 768])
>>> outputs.foregrounds.shape
torch.Size([1, 3, 1024, 768])
```

## Sapiens2ForNormalEstimation[[transformers.Sapiens2ForNormalEstimation]]

#### transformers.Sapiens2ForNormalEstimation[[transformers.Sapiens2ForNormalEstimation]]

```python
transformers.Sapiens2ForNormalEstimation(config: Sapiens2Config)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1215)

**Parametreler:**

config ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) : 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 bakın.

Üzerinde normal tahmini kafası bulunan Sapiens2 modeli (yüzey normal haritalarını tahmin eden, PixelShuffle tabanlı bir çözücü).

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.Sapiens2ForNormalEstimation.forward]]

```python
forward(pixel_values: Tensor, labels: typing.Optional[torch.Tensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1223)

**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 [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [Sapiens2ImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__)'a bakın (`processor_class`, görüntü işleme için [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanır).

labels (`torch.Tensor`, şekli `(batch_size, num_labels, height, width)`, *isteğe bağlı*) : Kayıp (loss) hesaplamak için kullanılan gerçek yüzey normal haritaları.

**Dönüş:** `Sapiens2NormalEstimatorOutput` veya `tuple(torch.Tensor)`

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

[Sapiens2ForNormalEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForNormalEstimation) 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`, şekli `(1,)`, *isteğe bağlı*, `labels` sağlandığında döndürülür) -- Normal tahmin kaybı.
- **normals** (`torch.Tensor`, şekli `(batch_size, num_labels, height, width)`) -- Modelin ürettiği ham normal haritası tahminleri (normalize edilmemiş).
- **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. Her katmanın çıktısında modelin gizli durumları ve başlangıç gömme çıktıları.
- **attentions** (`tuple(torch.Tensor)`, *opsiyonel*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `torch.Tensor` (katman başına bir adet) içeren bir tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`. Dikkat softmax'ı sonrası dikkat ağırlıkları.

Örnek:

```python
>>> from transformers import AutoImageProcessor, AutoModel
>>> from transformers.image_utils import load_image
>>> import torch

>>> image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")
>>> image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-normal-0.4b")
>>> model = AutoModel.from_pretrained("facebook/sapiens2-normal-0.4b")

>>> inputs = image_processor(image, return_tensors="pt")
>>> with torch.inference_mode():
...     outputs = model(**inputs)

>>> outputs.normals.shape
torch.Size([1, 3, 1024, 768])
```

## Sapiens2ForPointmapEstimation[[transformers.Sapiens2ForPointmapEstimation]]

#### transformers.Sapiens2ForPointmapEstimation[[transformers.Sapiens2ForPointmapEstimation]]

```python
transformers.Sapiens2ForPointmapEstimation(config: Sapiens2Config)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1287)

**Parametreler:**

config ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) : 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 bakın.

Üstünde bir pointmap başlığı bulunan Sapiens2 modeli (piksel başına 3D XYZ koordinatlarını tahmin eden, PixelShuffle tabanlı bir çözücü ve odak uzunluğu normalizasyonu için isteğe bağlı bir ölçek dalı).

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.Sapiens2ForPointmapEstimation.forward]]

```python
forward(pixel_values: Tensor, labels: typing.Optional[torch.Tensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1299)

**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 [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [Sapiens2ImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__)'a bakın (`processor_class`, görüntü işleme için [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanır).

labels (`torch.Tensor`, şekli `(batch_size, 3, height, width)`, *isteğe bağlı*) : Kayıp (loss) hesaplamak için kullanılan doğru (ground-truth) nokta haritası (pointmap).

**Dönüş:** `Sapiens2PointmapEstimatorOutput` veya `tuple(torch.Tensor)`

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

[Sapiens2ForPointmapEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForPointmapEstimation) 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`, şekli `(1,)`, *isteğe bağlı*, `labels` sağlandığında döndürülür) -- Pointmap tahmin kaybı.
- **pointmaps** (`torch.Tensor`, şekli `(batch_size, 3, height, width)`) -- Kanonik kamera uzayında piksel başına 3B XYZ koordinat tahminleri.
- **scales** (`torch.Tensor`, şekli `(batch_size, 1)`, *isteğe bağlı*) -- Kanonik odak uzaklığı / gerçek odak uzaklığı oranı. Ölçek dalı yapılandırılmamışsa `None`.
- **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. Her katmanın çıktısında modelin gizli durumları ve başlangıç gömme çıktıları.
- **attentions** (`tuple(torch.Tensor)`, *opsiyonel*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `torch.Tensor` (katman başına bir adet) içeren bir tuple, şekli `(batch_size, num_heads, sequence_length, sequence_length)`. Dikkat softmax'ı sonrası dikkat ağırlıkları.

Örnek:

```python
>>> from transformers import AutoImageProcessor, AutoModel
>>> from transformers.image_utils import load_image
>>> import torch

>>> image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")
>>> image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pointmap-0.4b")
>>> model = AutoModel.from_pretrained("facebook/sapiens2-pointmap-0.4b")

>>> inputs = image_processor(image, return_tensors="pt")
>>> with torch.inference_mode():
...     outputs = model(**inputs)

>>> outputs.pointmaps.shape
torch.Size([1, 3, 1024, 768])
```

## Sapiens2ForPoseEstimation[[transformers.Sapiens2ForPoseEstimation]]

#### transformers.Sapiens2ForPoseEstimation[[transformers.Sapiens2ForPoseEstimation]]

```python
transformers.Sapiens2ForPoseEstimation(config: Sapiens2Config)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1132)

**Parametreler:**

config ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) : 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 bakın.

Üstünde bir poz tahmini başlığı (gizli durumların çıktısının üzerine yerleştirilmiş bir ısı haritası öngörücüleri seti) bulunan Sapiens2 modeli.

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.Sapiens2ForPoseEstimation.forward]]

```python
forward(pixel_values: Tensor, flip_pairs: typing.Optional[torch.Tensor] = None, labels: typing.Optional[torch.Tensor] = None, label_weights: typing.Optional[torch.Tensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1140)

**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 [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [Sapiens2ImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__)'a bakın (`processor_class`, görüntü işleme için [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanır).

flip_pairs (`torch.Tensor`, şekli `(num_pairs, 2)`, *isteğe bağlı*) : Aynalanmış anahtar nokta çiftleri (örneğin, sol kulak -- sağ kulak), test zamanı çevirme artırımında kullanılır. Sağlandığında, model `pixel_values`'in yatay olarak çevrilmiş görüntüler içerdiğini varsayar ve orijinal yönelimi geri getirmek için çıktı ısı haritalarında `flip_back` çağırır.

labels (`torch.Tensor`, şekli `(batch_size, num_keypoints, height, width)`, *isteğe bağlı*) : Kayıp (loss) hesaplamak için kullanılan ısı haritası (heatmap) yer doğruluğu (ground truth).

label_weights (`torch.Tensor`, şekli `(batch_size, num_labels, 1, 1)` veya `(batch_size, num_labels, height, width)`, *isteğe bağlı*) : Her anahtar nokta için görünürlük ağırlıkları. `labels` şeklinin yayınlanabilir (broadcastable) olması gerekir.

**Dönüş:** `Sapiens2PoseEstimatorOutput` veya `tuple(torch.Tensor)`

`Sapiens2PoseEstimatorOutput` veya bir `torch.Tensor` demeti (`return_dict=False` geçirildiğinde veya `config.return_dict=False` olduğunda), yapılandırmaya ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

[Sapiens2ForPoseEstimation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForPoseEstimation) 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`, şekli `(1,)`, *isteğe bağlı*, `labels` sağlandığında döndürülür) -- Poz tahmini kaybı.
- **ısı haritaları** (`torch.Tensor`, şekli `(batch_size, num_keypoints, height, width)`) -- Modelin tahmin ettiği ısı haritaları.
- **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` (modelin bir gömme katmanı varsa gömme katmanının çı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)`. Modelin her aşamanın çıktısındaki gizli durumları (aynı zamanda özellik haritaları olarak da adlandırılır).
- **attentions** (`tuple[torch.Tensor, ...]`, *isteğe bağlı*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `(batch_size, num_heads, sequence_length, sequence_length)` biçiminde, her katman için bir adet içeren `torch.Tensor` demeti.

  Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat kafalarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

Örnek:

```python
>>> from transformers import AutoImageProcessor, AutoModel
>>> from transformers.image_utils import load_image
>>> import torch

>>> image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")
>>> image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-pose-0.4b")
>>> model = AutoModel.from_pretrained("facebook/sapiens2-pose-0.4b")

>>> boxes = [[[270.8, 0.6, 294.1, 379.5]]]
>>> inputs = image_processor(image, boxes=boxes, return_tensors="pt")
>>> with torch.inference_mode():
...     outputs = model(**inputs)

>>> outputs.heatmaps.shape
torch.Size([1, 308, 256, 192])
```

## Sapiens2ForSemanticSegmentation[[transformers.Sapiens2ForSemanticSegmentation]]

#### transformers.Sapiens2ForSemanticSegmentation[[transformers.Sapiens2ForSemanticSegmentation]]

```python
transformers.Sapiens2ForSemanticSegmentation(config: Sapiens2Config)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1019)

**Parametreler:**

config ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) : 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 bakın.

ADE20K, CityScapes gibi veri setleri için üstünde semantik segmentasyon başlığı bulunan Sapiens2 Modeli.

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.Sapiens2ForSemanticSegmentation.forward]]

```python
forward(pixel_values: Tensor, labels: typing.Optional[torch.LongTensor] = None, **kwargs: *<class 'transformers.utils.generic.TransformersKwargs'>)
```

[Kaynak](https://github.com/huggingface/transformers/blob/main/src/transformers/models/sapiens2/modeling_sapiens2.py#L1027)

**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 [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanılarak elde edilebilir. Ayrıntılar için [Sapiens2ImageProcessor.__call__()](/docs/transformers/main/tr/model_doc/molmo2#transformers.Molmo2ImageProcessor.__call__)'a bakın (`processor_class`, görüntü işleme için [Sapiens2ImageProcessor](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ImageProcessor) kullanır).

labels (`torch.LongTensor`, şekli `(batch_size, height, width)`, *isteğe bağlı*) : Kayıp hesabı için kullanılan gerçeklik semantik segmentasyon haritaları. İndisler `[0, ..., config.num_labels - 1]` aralığında olmalıdır. `config.num_labels > 1` ise bir sınıflandırma kaybı hesaplanır (Cross-Entropy).

**Dönüş:** [SemanticSegmenterOutput](/docs/transformers/main/tr/main_classes/output#transformers.modeling_outputs.SemanticSegmenterOutput) veya `tuple(torch.Tensor)`

[SemanticSegmenterOutput](/docs/transformers/main/tr/main_classes/output#transformers.modeling_outputs.SemanticSegmenterOutput) veya bir `torch.Tensor` demeti (eğer `return_dict=False` geçirildiyse veya `config.return_dict=False` ise), yapılandırma ([Sapiens2Config](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2Config)) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

[Sapiens2ForSemanticSegmentation](/docs/transformers/main/tr/model_doc/sapiens2#transformers.Sapiens2ForSemanticSegmentation) 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`, şekli `(1,)`, *isteğe bağlı*, `labels` sağlandığında döndürülür) -- Sınıflandırma (config.num_labels==1 ise regresyon) kaybı.
- **logits** (`torch.Tensor`, şekli `(batch_size, config.num_labels, logits_height, logits_width)`) -- Her piksel için sınıflandırma puanları.

  

  Döndürülen logits değerlerinin boyutu, girdi olarak geçirilen `pixel_values` ile aynı olmak zorunda değildir. Bu, bir kullanıcının logits değerlerini son işlem olarak orijinal görüntü boyutuna yeniden boyutlandırdığında iki kez interpolasyon yapılarak bazı kalite kayıpları yaşanmasını önlemek içindir. Logits şeklinizi her zaman kontrol etmeli ve gerektiğinde yeniden boyutlandırmalısınız.

  
- **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 katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için bir tane) içeren, `(batch_size, patch_size, hidden_size)` biçiminde bir demet.

  Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.
- **attentions** (`tuple(torch.Tensor)`, *isteğe bağlı*, `output_attentions=True` geçirildiğinde veya `config.output_attentions=True` olduğunda döndürülür) -- `torch.Tensor` (her katman için bir tane) içeren bir tuple, şekli `(batch_size, num_heads, patch_size, sequence_length)`.

  Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat kafalarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

Örnek:

```python
>>> from transformers import AutoImageProcessor, AutoModel
>>> from transformers.image_utils import load_image
>>> import torch

>>> image = load_image("http://images.cocodataset.org/val2017/000000004016.jpg")
>>> image_processor = AutoImageProcessor.from_pretrained("facebook/sapiens2-seg-0.4b")
>>> model = AutoModel.from_pretrained("facebook/sapiens2-seg-0.4b")

>>> inputs = image_processor(image, return_tensors="pt")
>>> with torch.inference_mode():
...     outputs = model(**inputs)

>>> outputs.logits.shape
torch.Size([1, 29, 1024, 768])
```

