Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot Implement Holistic in Android #5764

Open
Kaan-Karaoglan opened this issue Dec 2, 2024 · 3 comments
Open

Cannot Implement Holistic in Android #5764

Kaan-Karaoglan opened this issue Dec 2, 2024 · 3 comments
Assignees
Labels
legacy:holistic Issues related to Holistic os:windows MediaPipe issues on Windows platform:android Issues with Android as Platform type:support General questions

Comments

@Kaan-Karaoglan
Copy link

Have I written custom code (as opposed to using a stock example script provided in MediaPipe)

Yes

OS Platform and Distribution

Windows 11 and API 30

MediaPipe Tasks SDK version

No response

Task name (e.g. Image classification, Gesture recognition etc.)

Holistic

Programming Language and version (e.g. C++, Python, Java)

Java

Describe the actual behavior

I cannot reach the landmarks

Describe the expected behaviour

I want to reach landmarks that produced by holistic_tracking_gpu.aar

Standalone code/steps you may have used to try to get what you need

https://github.com/Kaan-Karaoglan/Turkish_Sign_Language_Mobile_Application

Other info / Complete Logs

processor.addPacketCallback("output_video", packet -> {
//            LandmarkList landmarks = null;
//            try {
//                landmarks = PacketGetter.getProto(packet, LandmarkList.class);
//            } catch (InvalidProtocolBufferException e) {
//                throw new RuntimeException(e);
//            }
//            synchronized (landmarkHistory) {
//                if (landmarkHistory.size() >= LANDMARK_HISTORY_SIZE) {
//                    landmarkHistory.remove(0);
//                }
//                landmarkHistory.add(landmarks);
//            }
//            processLandmarks(landmarkHistory);


I cannot reach landmarks through this script. It sends an error about GPU.buffer.
@kuaashish kuaashish assigned kuaashish and unassigned kalyan2789g Dec 3, 2024
@kuaashish kuaashish added os:windows MediaPipe issues on Windows platform:android Issues with Android as Platform task:holistic landmarker Issues related to MediaPipe Holistic Landmarker legacy:holistic Issues related to Holistic type:support General questions and removed task:holistic landmarker Issues related to MediaPipe Holistic Landmarker labels Dec 3, 2024
@salihselimsekerci
Copy link

MediaPipe "GPU.buffer" hatası için çözüm:

OpenGL ES Sürümünü Kontrol Edin: Cihazınızın OpenGL ES 3.1 veya üstünü desteklediğinden emin olun.

holistic_tracking_gpu.aar Doğru Eklendi Mi? implementation files('libs/holistic_tracking_gpu.aar') ile Gradle yapılandırmasını kontrol edin.

Girdi/Çıktı Formatını Doğrulayın: Modelin beklediği çözünürlük ve renk formatını doğru sağlayın.

Logcat İle Hata Takibi Yapın: Hatanın detaylarını görmek için adb logcat -s Mediapipe komutunu çalıştırın.

GPU Yerine CPU Kullanın (Test): GPU kaynaklı sorunu daraltmak için işlemeyi CPU'ya yönlendirin.

Bu adımları uygulayarak sorunu çözebilirsiniz. Yine sorun devam ederse detaylı bilgi verin, destek olayım! 😊

@Kaan-Karaoglan
Copy link
Author

TR:

Merhabalar Salih Bey,

OpenGL ES sürümümüzü 3.1 veya üstünü destekliyor.

Holistic_tracking_gpu.aar, 'libs/holistic_tracking_gpu.aar') kısmında olacak şekilde eklendi. Gradle yapılandırmasını kontrol edildi.

Mobil uygulama zaten çalışıyor. Ancak Renderlanmış datayı ekrana basıyor. Renderlanmadan önce elde edilen "Landmarklara" erişim halen yok.

ENG:

Hello Mr. Şekerci,

OpenGL ES version is 3.1 or higher.

Added holistic_tracking_gpu.aar to 'libs/holistic_tracking_gpu.aar'). Checked Gradle configuration.

The mobile application is already working. But it prints the rendered data on the screen. There is still no access to the “Landmarks” obtained before rendering.

@salihselimsekerci
Copy link

MediaPipe GPU Buffer Hatası Raporu

Sorun Tanımı:Mobil uygulama geliştirme sırasında, MediaPipe kullanımıyla ilgili olarak "GPU.buffer" hatası alınmaktadır. Uygulama GPU tabanlı render yapıyor, ancak render işlemi öncesinde elde edilen "Landmark" verilerine erişim sağlanamamaktadır.

Durum:

OpenGL ES 3.1 veya üstü desteklenmektedir.

holistic_tracking_gpu.aar dosyası libs/holistic_tracking_gpu.aar konumuna eklenmiş ve Gradle yapılandırması doğrulanmıştır.

Mobil uygulama render işlemi tamamlanarak ekrana veri basmaktadır. Ancak renderdan önce Landmark verilerine erişim hala mümkün değildir.

Olası Nedenler ve Çözümler:

Graph Debugging (Mediapipe Logcat Kontrolü):

adb logcat -s Mediapipe komutunu kullanarak hata çıktısı incelenmeli. Landmark verilerinin hangi aşamada işlenmediği analiz edilmelidir.

Output Stream Kontrolü:

MediaPipe uygulamalarında OutputStreamPoller kullanılarak landmark verileri çıkarılabilir. Aşağıdaki kodun doğruluğu kontrol edilmelidir:

Packet packet = outputLandmarkStream.poll();
if (packet != null) {
    NormalizedLandmarkList landmarks = PacketGetter.getProto(packet, NormalizedLandmarkList.class);
    // Landmark işleme kodları
}

GPU/CPU İşlem Geçişi:

GPU render işlemleri bazen verileri eksik döndürebilir. Geçici olarak GPU yerine CPU modunda çalıştırılabilir:
mediapipeGraph.setGpuMode(false); // CPU modunda çalıştır

MediaPipe Graph Yapılandırmasının İncelenmesi:

Kullanılan holistic_tracking_gpu.aar dosyasında veya graph konfigürasyonunda OUTPUT_STREAM tanımlı mı? Landmark verilerini aktaran stream'ın doğru tanımlandığından emin olunmalıdır.

Ek Output Stream Tanımlanması:

Grafiğe yeni bir landmark çıkışı eklenmeli ve landmark verilerine doğrudan erişim sağlanmalıdır:

node {
  calculator: "LandmarkToStreamCalculator"
  input_stream: "landmarks"
  output_stream: "output_landmarks"

Sonuç:Yukarıdaki adımlar, landmark verilerine erişimi sağlamak için gerekli düzeltmeleri içermektedir. Sorun devam ederse, graph yapılandırması detaylı olarak incelenmelidir.
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
legacy:holistic Issues related to Holistic os:windows MediaPipe issues on Windows platform:android Issues with Android as Platform type:support General questions
Projects
None yet
Development

No branches or pull requests

4 participants