Kivy android camera opencv
Prototypic Examples for Android AR Apps with Kivy
This repository contains several Kivy Apps. They are only prototyic Test Apps with some single functionalities. The Goal was to test the Framework Kivy with regards to an Augmented Realtiy App, which maybe will be done in the future. For others it may be a collection for their start with the Kivy Framework.
With exception to the last App, all other Apps are build successive.
01 Simplest Kivy App
This App was used to get the Buildprocess running. It has only some simple features, like a Scatterbox and a Textfield.
Sources:
02 Android Toast App
Enhances App 01 with an Android Toast.
Sources:
03 Simple Camera App
Simple Camera with working Permission on Android SDK 23+.
Source:
Camera with OpenCV and Face Recognition.
Source:
04b OpenCV Camera App
Camera with simple OpenCV-Filter: Grayscale, Invert and Edges.
Source:
05 Gravity Camera App
Camera with overlayed Horizon, based on Gravity Sensor Data.
Source:
06 Compass Camera App
Camera with Horizon and Compass Display (South). The Compass works unreliable.
Source:
07 Sensor Camera App
Accelerometer and Gyroscope added.
Sources:
08 Plyer GPS Example
GPS Example working. Using GPS Permissions.
Sources:
About
Prototypic Examples for Android AR Apps with Kivy
Источник
Connect your android phone camera to OpenCV – Python
Prerequisites: OpenCV
OpenCV is a huge open-source library for computer vision, machine learning, and image processing. OpenCV supports a wide variety of programming languages like Python, C++, Java, etc. It can process images and videos to identify objects, faces, or even the handwriting of a human.
Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.
To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning — Basic Level Course
Many a time, while doing Computer Vision or Image Processing using our PC’s webcam is not a very option. Maybe we want to increase the camera quality of our webcam, or we want to create some image processing applications which will use an android camera as the medium.
This article uses Windows to do this. But the basics of the code will be same on other Operating systems too.
Approach
- Download and install IP Webcam application on your mobile phone.
- Then make sure your PC and Phone both are connected to the same network. Open your IP Webcam application on your both, click “Start Server” (usually found at the bottom). This will open a camera on your Phone.
- A URL is being displayed on the Phone screen, type the same URL on your PC browser, and under “Video renderer” Section, click on “Javascript”.
- You can see video captured on your phone, which starts showing up on your browser. Now, what we will be going to do is, taking image data from the URL using the request module and convert this to an image frame using NumPy, and finally, start using our Android camera as a webcam in Python.
- In the code:
- Import module
- Add URL displayed in your phone
- Continuous fetch data from URL
- Keep displaying this data collected
- Close window
Источник
Доступ к Android-камере через Kivy
пожалуйста, я ищу работу, чтобы получить доступ Android Камера через Киви, или библиотека, которую я могу интеграция с kivy для доступа к камере.
Я разрабатываю приложение для Android, но с помощью python-kivy для ИП
все будет действительно оценено,
5 ответов
Kivy имеет некоторую родную поддержку для вызова камеры. Проверьте эта страница из нового руководства по программированию для основного поставщика или эта страница из нового руководства по программированию для виджета uix. Теоретически ядро должно быть способно адаптироваться между платформами, и виджет должен иметь возможность использовать камеру.
вот мой пример кода, который работает на Android. Просто импортируйте этот файл https://github.com/kivy/plyer/blob/master/plyer/platforms/android/camera.py Кроме того, не забудьте добавить разрешения камеры для манифеста.
этой ссылки на диск, где можно найти пользовательскую реализацию. Он основан на автоматической упаковке PyJNIus класса камеры Android API. Я не пробовал, но ты можешь попробовать.
благодаря этому посту я смог решить критическую проблему в мое приложение Спасибо большое, ребята, вот мой код, который я использовал, я надеюсь, что вы, ребята, можете использовать его где-нибудь.
Я сделал экран и использовал функцию камеры plyer
Я также использовал некоторые другие импортные товары для экранов и ярлыки и всплывающие окна и т. д., которые вы можете определенно смотреть в зависимости от ваше требование
поскольку мне было трудно найти ответ, как использовать камеру на android, я подумал, что поделюсь своим путешествием к ответу, чтобы сэкономить время следующего человека.
Я не мог найти способ сделать рабочий класс камеры прямо из киви:
наконец, я нашел решение, опубликованное выше, и, потратив некоторое время на его реализацию в моем приложении, оказалось, что мне невозможно вернуться к приложение после фотосъемки-приложение было прекращено, поэтому я не мог вернуться в приложение, чтобы использовать изображение (я использовал Kivy Launcher). Совсем недавно я узнал, что этот способ доступа к камере был оставлен (https://github.com/kivy/plyer/issues/16#issuecomment-54094174)
но затем я нашел решение ниже, и просто запустив пример кода, похоже, я смогу получить результаты, которые я хочу (просто нужно немного настроить, чтобы не врезаться, когда android камера отменена/фото не было сделано)
изменить: похоже, мое приложение было прекращено, потому что я не реализовал on_pause: return True в верхнем виджете. Тем не менее приведенный выше текст может оказаться полезным
Источник
kivy camera example does not work on android #6369
Comments
wangyuncong123 commented Jun 6, 2019 •
Versions
- Python:
- OS:
- Kivy:
- Kivy installation method:
Description
I run the kivy camera example in windows and it works well. but when i use it in android(through buildozer).it crashed.
Code and Logs
my buildozer.spec
requirements = kivy,plyer
android.permissions = CAMERA
my source code
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
camera2 = »’
BoxLayout:
orientation: ‘vertical’
Camera:
id: camera
resolution: (640, 480)
play: False
ToggleButton:
text: ‘Play’
on_press: camera.play = not camera.play
size_hint_y: None
height: ’48dp’
»’
my log:
06-06 23:15:53.122 5657 5681 I python : Initializing Python for Android
06-06 23:15:53.122 5657 5681 I python : Setting additional env vars from p4a_env_vars.txt
06-06 23:15:53.122 5657 5681 I python : Changing directory to the one provided by ANDROID_ARGUMENT
06-06 23:15:53.122 5657 5681 I python : /data/user/0/org.test.myapp/files/app
06-06 23:15:53.123 5657 5681 I python : Preparing to initialize python
06-06 23:15:53.123 5657 5681 I python : _python_bundle dir exists
06-06 23:15:53.123 5657 5681 I python : calculated paths to be.
06-06 23:15:53.123 5657 5681 I python : /data/user/0/org.test.myapp/files/app/_python_bundle/stdlib.zip:/data/user/0/org.test.myapp/files/app/_python_bundle/modules
06-06 23:15:53.124 5657 5681 I python : set wchar paths.
06-06 23:15:53.298 5657 5681 I python : Initialized python
06-06 23:15:53.299 5657 5681 I python : AND: Init threads
06-06 23:15:53.301 5657 5681 I python : testing python print redirection
06-06 23:15:53.307 5657 5681 I python : Android path [‘.’, ‘/data/user/0/org.test.myapp/files/app/_python_bundle/stdlib.zip’, ‘/data/user/0/org.test.myapp/files/app/_python_bundle/modules’, ‘/data/user/0/org.test.myapp/files/app/_python_bundle/site-packages’]
06-06 23:15:53.308 5657 5681 I python : os.environ is environ(<'PATH': '/sbin:/system/sbin:/system/bin:/system/xbin:/vendor/bin:/vendor/xbin', 'DOWNLOAD_CACHE': '/data/cache', 'ANDROID_BOOTLOGO': '1', 'ANDROID_ROOT': '/system', 'ANDROID_ASSETS': '/system/app', 'ANDROID_DATA': '/data', 'ANDROID_STORAGE': '/storage', 'EXTERNAL_STORAGE': '/sdcard', 'ASEC_MOUNTPOINT': '/mnt/asec', 'BOOTCLASSPATH': '/system/framework/core-oj.jar:/system/framework/core-libart.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/bouncycastle.jar:/system/framework/apache-xml.jar:/system/framework/legacy-test.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/org.apache.http.legacy.boot.jar:/system/framework/android.hidl.base-V1.0-java.jar:/system/framework/android.hidl.manager-V1.0-java.jar:/system/framework/mediatek-common.jar:/system/framework/mediatek-framework.jar:/system/framework/mediatek-telephony-common.jar:/system/framework/mediatek-telephony-base.jar:/system/framework/mediatek-ims-common.jar:/system/framework/mediatek-telecom-common.jar', 'SYSTEMSERVERCLASSPATH': '/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar:/system/framework/com.android.location.provider.jar', 'ANDROID_SOCKET_zygote': '8', 'ANDROID_ENTRYPOINT': 'main.pyc', 'ANDROID_ARGUMENT': '/data/user/0/org.test.myapp/files/app', 'ANDROID_APP_PATH': '/data/user/0/org.test.myapp/files/app', 'ANDROID_PRIVATE': '/data/user/0/org.test.myapp/files', 'ANDROID_UNPACK': '/data/user/0/org.test.myapp/files/app', 'PYTHONHOME': '/data/user/0/org.test.myapp/files/app', 'PYTHONPATH': '/data/user/0/org.test.myapp/files/app:/data/user/0/org.test.myapp/files/app/lib', 'PYTHONOPTIMIZE': '2', 'P4A_BOOTSTRAP': 'SDL2', 'PYTHON_NAME': 'python', 'P4A_IS_WINDOWED': 'True', 'P4A_ORIENTATION': 'landscape', 'P4A_NUMERIC_VERSION': 'None', 'P4A_MINSDK': '21', 'LC_CTYPE': 'C.UTF-8'>)
06-06 23:15:53.308 5657 5681 I python : Android kivy bootstrap done. name is main
06-06 23:15:53.308 5657 5681 I python : AND: Ran string
06-06 23:15:53.308 5657 5681 I python : Run user program, change dir and execute entrypoint
06-06 23:15:53.787 5657 5681 I python : [INFO ] [Logger ] Record log in /data/user/0/org.test.myapp/files/app/.kivy/logs/kivy_19-06-06_1.txt
06-06 23:15:53.788 5657 5681 I python : [INFO ] [Kivy ] v1.11.0
06-06 23:15:53.789 5657 5681 I python : [INFO ] [Kivy ] Installed at «/data/user/0/org.test.myapp/files/app/_python_bundle/site-packages/kivy/init.pyc»
06-06 23:15:53.790 5657 5681 I python : [INFO ] [Python ] v3.7.1 (default, Jun 3 2019, 09:46:42)
06-06 23:15:53.790 5657 5681 I python : [Clang 6.0.2 (https://android.googlesource.com/toolchain/clang 183abd29fc496f55
06-06 23:15:53.791 5657 5681 I python : [INFO ] [Python ] Interpreter at «android_python»
06-06 23:15:56.176 5657 5681 I python : [INFO ] [Factory ] 184 symbols loaded
06-06 23:15:57.485 5657 5681 I python : [INFO ] [ImageLoaderFFPy] Using ffpyplayer 4.2.0.dev0
06-06 23:15:57.490 5657 5681 I python : [INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_ffpyplayer, img_gif (img_pil ignored)
06-06 23:15:57.725 5657 5681 I python : [INFO ] [Window ] Provider: sdl2
06-06 23:15:57.802 5657 5681 I python : [INFO ] [GL ] Using the «OpenGL ES 2» graphics system
06-06 23:15:57.807 5657 5681 I python : [INFO ] [GL ] Backend used
06-06 23:15:57.810 5657 5681 I python : [INFO ] [GL ] OpenGL version
06-06 23:15:57.812 5657 5681 I python : [INFO ] [GL ] OpenGL vendor
06-06 23:15:57.813 5657 5681 I python : [INFO ] [GL ] OpenGL renderer
06-06 23:15:57.814 5657 5681 I python : [INFO ] [GL ] OpenGL parsed version: 2, 0
06-06 23:15:57.815 5657 5681 I python : [INFO ] [GL ] Texture max size
06-06 23:15:57.817 5657 5681 I python : [INFO ] [GL ] Texture max units
06-06 23:15:57.868 5657 5681 I python : [INFO ] [Window ] auto add sdl2 input provider
06-06 23:15:57.871 5657 5681 I python : [INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
06-06 23:15:58.310 5657 5681 I python : [INFO ] [Camera ] Provider: android
06-06 23:15:58.346 5657 5681 I python : [INFO ] [Text ] Provider: sdl2
06-06 23:15:58.758 5657 5681 I python : Traceback (most recent call last):
06-06 23:15:58.759 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/lang/builder.py», line 700, in _apply_rule
06-06 23:15:58.761 5657 5681 I python : File «kivy/weakproxy.pyx», line 35, in kivy.weakproxy.WeakProxy.setattr
06-06 23:15:58.762 5657 5681 I python : File «kivy/properties.pyx», line 497, in kivy.properties.Property.set
06-06 23:15:58.764 5657 5681 I python : File «kivy/properties.pyx», line 839, in kivy.properties.ListProperty.set
06-06 23:15:58.766 5657 5681 I python : File «kivy/properties.pyx», line 544, in kivy.properties.Property.set
06-06 23:15:58.768 5657 5681 I python : File «kivy/properties.pyx», line 599, in kivy.properties.Property.dispatch
06-06 23:15:58.769 5657 5681 I python : File «kivy/_event.pyx», line 1214, in kivy._event.EventObservers.dispatch
06-06 23:15:58.771 5657 5681 I python : File «kivy/_event.pyx», line 1120, in kivy._event.EventObservers._dispatch
06-06 23:15:58.773 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/uix/camera.py», line 103, in _on_index
06-06 23:15:58.774 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/core/camera/camera_android.py», line 42, in init
06-06 23:15:58.776 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/core/camera/init.py», line 70, in init
06-06 23:15:58.778 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/core/camera/camera_android.py», line 49, in init_camera
06-06 23:15:58.780 5657 5681 I python : File «jnius/jnius_export_class.pxi», line 1044, in jnius.jnius.JavaMultipleMethod.call
06-06 23:15:58.782 5657 5681 I python : File «jnius/jnius_export_class.pxi», line 765, in jnius.jnius.JavaMethod.call
06-06 23:15:58.784 5657 5681 I python : File «jnius/jnius_export_class.pxi», line 931, in jnius.jnius.JavaMethod.call_staticmethod
06-06 23:15:58.785 5657 5681 I python : File «jnius/jnius_utils.pxi», line 91, in jnius.jnius.check_exception
06-06 23:15:58.787 5657 5681 I python : jnius.jnius.JavaException: JVM exception occurred: Fail to connect to camera service
06-06 23:15:58.788 5657 5681 I python :
06-06 23:15:58.789 5657 5681 I python : During handling of the above exception, another exception occurred:
06-06 23:15:58.789 5657 5681 I python :
06-06 23:15:58.790 5657 5681 I python : Traceback (most recent call last):
06-06 23:15:58.791 5657 5681 I python : File «/home/wyc/.buildozer/android/app/main.py», line 26, in
06-06 23:15:58.795 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/app.py», line 829, in run
06-06 23:15:58.797 5657 5681 I python : File «/home/wyc/.buildozer/android/app/main.py», line 23, in build
06-06 23:15:58.799 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/lang/builder.py», line 405, in load_string
06-06 23:15:58.801 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/lang/builder.py», line 707, in _apply_rule
06-06 23:15:58.803 5657 5681 I python : kivy.lang.builder.BuilderException: Parser: File «», line 6:
06-06 23:15:58.803 5657 5681 I python : .
06-06 23:15:58.804 5657 5681 I python : 4: Camera:
06-06 23:15:58.805 5657 5681 I python : 5: id: camera
06-06 23:15:58.806 5657 5681 I python : >> 6: resolution: (640, 480)
06-06 23:15:58.807 5657 5681 I python : 7: play: False
06-06 23:15:58.807 5657 5681 I python : 8: ToggleButton:
06-06 23:15:58.808 5657 5681 I python : .
06-06 23:15:58.809 5657 5681 I python : JavaException: JVM exception occurred: Fail to connect to camera service
06-06 23:15:58.810 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/lang/builder.py», line 700, in _apply_rule
06-06 23:15:58.810 5657 5681 I python : File «kivy/weakproxy.pyx», line 35, in kivy.weakproxy.WeakProxy.setattr
06-06 23:15:58.811 5657 5681 I python : File «kivy/properties.pyx», line 497, in kivy.properties.Property.set
06-06 23:15:58.812 5657 5681 I python : File «kivy/properties.pyx», line 839, in kivy.properties.ListProperty.set
06-06 23:15:58.813 5657 5681 I python : File «kivy/properties.pyx», line 544, in kivy.properties.Property.set
06-06 23:15:58.813 5657 5681 I python : File «kivy/properties.pyx», line 599, in kivy.properties.Property.dispatch
06-06 23:15:58.814 5657 5681 I python : File «kivy/_event.pyx», line 1214, in kivy._event.EventObservers.dispatch
06-06 23:15:58.815 5657 5681 I python : File «kivy/_event.pyx», line 1120, in kivy._event.EventObservers._dispatch
06-06 23:15:58.816 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/uix/camera.py», line 103, in _on_index
06-06 23:15:58.817 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/core/camera/camera_android.py», line 42, in init
06-06 23:15:58.818 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/core/camera/init.py», line 70, in init
06-06 23:15:58.819 5657 5681 I python : File «/home/wyc/.buildozer/android/platform/build/build/python-installs/myapp/kivy/core/camera/camera_android.py», line 49, in init_camera
06-06 23:15:58.819 5657 5681 I python : File «jnius/jnius_export_class.pxi», line 1044, in jnius.jnius.JavaMultipleMethod.call
06-06 23:15:58.820 5657 5681 I python : File «jnius/jnius_export_class.pxi», line 765, in jnius.jnius.JavaMethod.call
06-06 23:15:58.821 5657 5681 I python : File «jnius/jnius_export_class.pxi», line 931, in jnius.jnius.JavaMethod.call_staticmethod
06-06 23:15:58.822 5657 5681 I python : File «jnius/jnius_utils.pxi», line 91, in jnius.jnius.check_exception
06-06 23:15:58.823 5657 5681 I python :
06-06 23:15:58.823 5657 5681 I python : Python for android ended.
The text was updated successfully, but these errors were encountered:
Источник