Quick actions

cmd+k|ctrl+k

Navigation

Languages

gambar karikatur

Snippet info

Language

Python

Visibility

public

Author

markusparu54

Created

2024-12-09T12:01:50.043059Z

Updated

2024-12-09T12:01:50.043059Z

import cv2
import dlib
import numpy as np

# Load gambar
image_path = "path_to_your_image.jpg"  # Ganti dengan path gambar Anda
image = cv2.imread(image_path)

# Inisialisasi detektor wajah
detector = dlib.get_frontal_face_detector()

# Deteksi wajah dalam gambar
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
faces = detector(gray)

# Fungsi untuk mengubah wajah menjadi karikatur
def create_cartoon_effect(image, faces):
    for face in faces:
        x, y, w, h = (face.left(), face.top(), face.width(), face.height())

        # Crop wajah untuk efek karikatur
        face_image = image[y:y+h, x:x+w]
        
        # Menggunakan filter bilateral untuk menciptakan efek karikatur
        face_image = cv2.bilateralFilter(face_image, 9, 75, 75)

        # Gambar wajah dengan efek karikatur pada gambar utama
        image[y:y+h, x:x+w] = face_image
    return image

# Menerapkan efek karikatur
cartoon_image = create_cartoon_effect(image, faces)

# Tampilkan gambar karikatur
cv2.imshow("Cartoon Image", cartoon_image)
cv2.waitKey(0)
cv2.destroyAllWindows()

# Simpan gambar hasil karikatur
cv2.imwrite("cartoon_image.jpg", cartoon_image)
INFO