Name already in use
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Pict2Cam is an Android fake camera app written in Kotlin that you can use to pick images from your device and feed them to an external camera request. This means that you can provide any image in your device to apps that require you to take photos from a camera app.


- An Android device, obviously 😉
- Android 5.0+
- The app won’t work in Android 11+ since Google restricted which apps can appear in the camera picker to only the system default bundled camera app.
The app provides the following features:
- Pick any image from your device when apps want to use a camera app
- Crop picked images before feeding them to the app that requires a camera app
You can get it from Google Play, HUAWEI AppGallery or grab the latest stable or bleeding edge release from the Releases page.

Refer to the contributing guide if you want to contribute to the project!
А вы знали, что камера смартфона делает ненастоящие фото? Как это работает
Нельзя не признать, что за последние годы смартфоны достигли невероятных успехов в мобильной фотографии. Почти любая модель сделает хорошее фото днем, а флагманы делают прекрасные снимки даже ночью. И главная заслуга в этом не столько продвинутых сенсоров камеры с большим физическим размером и разрешением вплоть до 200 Мп, а в искусственном интеллекте, который занимается обработкой изображения. Он, к слову, нередко вводит нас в заблуждение, выдывая желаемое за действительное. Давайте разберемся, как работает камера с ИИ, а также, где проходит грань между улучшением снимка и прямым обманом с заменой объектов в кадре.

Порой искусственный интеллект не улучшает фото, а меняет объекты в кадре
Как сфотографировать Луну на телефон
С 2019 года в приложение камеры многих смартфонов активно внедряется режим лунной съемки, позволяющий сфотографировать спутник Земли и получить не просто размытый круг, а полноценный снимок, на котором будут видны даже кратеры. Выглядит впечатляюще, но назвать такое изображением реальным фото Луны можно лишь с очень большими оговорками.

Многие смартфоны умеют фотографировать Луну, но способна ли на это в действительности мобильная оптика?
⚡ Подпишись на Androidinsider в Дзене, где мы публикуем эксклюзивные материалы
На прошлой неделе пользователь Reddit наглядно продемонстрировал, как в действительности смартфоны Samsung фотографируют Луну. Он скачал фотографию земного спутника, уменьшил ее разрешение до 170х170 и размыл изображение, из-за чего снимок, по сути, превратился в серый круг без каких-либо деталей. После этого энтузиаст выключил в комнате свет, отошел на несколько метров от монитора и сфотографировал сжатую картинку на свой Galaxy S Ultra, получив вполне четкое фото поверхности Луны.

Слева — то, как выглядит сжатое до невозможности изображение Луны, а справа — то, как его видит камера Samsung
Четкость снимка обеспечивается за счет искусственного наложения фото спутника Земли на снимок с изображением, чей силуэт отдаленно напоминает Луну. Причем так делает не только Samsung, но и другие производители, чьи смартфоны оснащены лунным режимом: HUAWEI, OPPO, Xiaomi и другие. И порой доходит до смешного, когда ИИ воспринимает любой светящийся в темноте круглый объект (например, лампу фонарного столба) как реальный объект на небосводе.
Загляни в телеграм-канал Сундук Али-Бабы, где мы собрали лучшие товары с АлиЭкспресс
Как работает камера с ИИ
Можно ли в таком случае считать, что камера смартфона нас обманывает, выдавая желаемое за действительное? Если вы и правда думали, что телефон способен сфотографировать Луну без помощи искусственного интеллекта, то да. Однако сами производители, включая Samsung, не раз подробно объясняли, как работает режим лунной съемки.

Искусственный интеллект не всегда столь агрессивен
Главная задача смартфона в таком сценарии — правильно определить Луну, не приняв за нее упомянутую ранее лампу фонарного столба или другой объект, не имеющий ничего общего со спутником Земли. После этого ИИ накладывает идентичное изображение. Поскольку мы всегда видим только одну сторону Луны, смартфону не составляет труда подобрать правильное фото даже в том случае, если на небе не круг, а полумесяц. Луна реальная, а вот ваш снимок представляет из себя комбинацию двух изображений (с камеры и базы ИИ).
❗ Поделись своим мнением или задай вопрос в нашем телеграм-чате
Лунный режим — пример агрессивной работы искусственного интеллекта, но чаще всего он ведет себя более бережно. В ночном режиме камера не дорисовывает объекты, а склеивает несколько фотографий, благодаря чему удается выжать максимум света из каждого участка кадра. А при определении сцены ИИ просто выставляет оптимальные параметры для получения красивого с художественной точки зрения фото.
Обработка фото нейросетью
Еще более крутые вещи искусственный интеллект умеет делать на этапе постобработки. В качестве примера приведу одну из фишек фоторедактора Xiaomi, который встроен в стандартное приложение «Галерея». Помимо банальных вещей вроде применения фильтров, наложения текста и стикеров он умеет, например, менять небо на фото.

По принципу работы замена неба — то же, что и лунный режим, только на этапе постобработки
Работает эта фишка схожим с лунным режимом образом. Искусственный интеллект распознает небо на фото, после чего подставляет вместо него одну из предложенных заготовок, а также корректирует экспозицию снимка. Назвать подобный подход обманом язык не повернется. Как и в случае с Луной, вы просите ИИ «сделать красиво», с чем он прекрасно справляется, фактически меняя одно изображение на другое. Поэтому мы имеем дело не с обманом, а максимум с недосказанностью, вызванной утаиванием со стороны некоторых производителей отдельных аспектов работы искусственного интеллекта.
⚡ Подпишись на Androidinsider в Пульс Mail.ru, чтобы получать новости из мира Андроид первым
Алгоритмы ИИ, которые в последнее время принято называть нейросетями, активно развиваются и как раз-таки в обработке изображений искусственный интеллект достигает невероятных успехов. За прошедший год мы уже рассказывали вам:
Это лишь малая часть того, на что в руках умелых программистов способна нейросетевая обработка фото. Главное в такой ситуации — иметь представление о том, где искусственный интеллект просто адаптирует экспозицию, а где — приукрашивает картинку, зачастую меняя одно изображение на другое.
Как подменить изображение в камере андроид
По вопросам наполнения шапки обращайтесь к модераторам раздела через кнопку «Жалоба» под сообщениями, на которые необходимо добавить ссылки.
Сообщение отредактировал ahmetov-82 — 17.09.20, 11:07
есть ли возможность подключать юсб камеру к устройствам с юзб хостом и получать програмно с нее картинку?
если да в какую сторону гуглить? софт, естественно, будет разрабатываться свой.
поможет ли в этом помочь openCV? будут ли проблемы с подключением, определением камеры?Android emulator camera custom image
Does anybody know is it possible to open some personal picture when emulator camera starts?
I have an application which is based on image analysis and I would like when I click a button for camera that camera opens not that default Android emulator moving image. I want it to open some image which I set as a default image. So when I choose to take a picture it will show only that image and when I take a take a picture, that image will be saved to gallery, not Android default image.

7 Answers 7
Under Tools > AVD Manager , select the "pencil" to get to "Virtual Device Configuration". Show Advanced Settings > Camera will give you the option of using emulated, or a device:
Device — use host computer webcam or built-in camera

If all you need is to get a still image into the camera, starting with Android Studio 3.2 you can put your static images into the virtual scene:
as discussed in this entry from Android developers blog. Note that you’ll need to move the camera position into the dining room to see your images (turn around and use Alt-w to move forward).

Now you have a texture just in front of camera-default-position.

Update 2022
The best way use the OBS. this project creates a virtual webcam and you can play videos or show picture.
Step 1: Download the OBS Studio from this site and create a virtual webcam and add a video for plying that.

Step 2: Changing the config in android AVD. change front and back camera to webcom0.

On Mac OS, ensure that the emulator runs in Standalone mode.
You can check this at: Preferences > Tools > Emulator, See image below (Launch in tool window should be unticked as shown below):

You can then launch the emulator and under the Camera extended control, upload your desired image, in my case, a QR code.

Finally, using the option key on Mac / Alt on Windows + QWEASD + Mouse, you can navigate the camera around the room and find your image (in my case the QR code) as shown below:

Adding here as I’ve been troubleshooting an issue for the past day and eventually found a solution that could help others. (On MacOSX, using Android Studio Emulator)
Problem: When trying to use OBS Studio as a virtual camera for the emulator, the emulator does not recognize the OBS Virtual Camera and the only option in the device manager camera settings is webcam0 which is the built in webcam. AND the camera app on the android emulator does not recognize the virtual camera device.
Solution:
install OBS Studio and run it, start the virtual camera for the first time, this will automatically install a CoreMediaIO DAL plug-in at /Library/CoreMediaIO/Plug-Ins/DAL and create the virtual webcam device.
go to the emulator folder of your Android Studio installation cd
/Library/Android/sdk/emulator and check the available web cam list with the command ./emulator -webcam-list , you should see two webcams available; the built in camera webcam0 and the obs virtual device webcam1 .
edit the config file for your avd to use webcam1 by opening terminal and running nano
/.android/avd/
/config.ini scroll down and amend the line hw.camera.back = webcam1 Ctrl+O to write out and Ctrl+X to exit nano. make sure your OBS virtual device is started in the OBS Studio program.
run the emulator through command line specifying the virtual camera by going to the emulator folder cd
/Library/Android/sdk/emulator and running ./emulator -avd
-camera-back webcam1 the device will now boot and when you open the camera app, you should see the OBS virtual device input. IF YOU DO NOT, follow below, as this was my major problem.
If the camera app shows an error and you cannot see the OBS virtual device even after following the above steps, the solution that worked for me is to reset camera access permissions. It turned out for me that the emulator had previously requested access to the camera from the system whilst the built in webcam0 was the camera source for the avd. The emulator needed permission to use the virtual device webcam1 from the system, but would not request it again as it already had permission for the built in camera webcam0 . This caused an error when opening the camera app in the emulator as it could not access the source.
To solve this you must close the emulator and android studio, and run tccutil reset Camera (note this will reset camera permissions for all applications, you can reset the permissions for only Android Studio/specific applications by running tccutil reset Camera com.WHATEVERBUNDLE.YOURAPPID .
After resetting the camera permissions, start the emulator again using step 4 above, and when opening the camera app, you should be prompted by the mac system to allow camera access to Android Studio, give it access and then you should see the OBS virtual camera input as expected.
Note: I found after running the emulator through the command line once, you can then run the emulator normally and the camera settings will persist.