Git Product home page Git Product logo

artoolkitx / artoolkitx Goto Github PK

View Code? Open in Web Editor NEW
440.0 39.0 123.0 141.5 MB

artoolkitX, providing high-performance video acquisition, marker and texture tracking for augmented reality, in native code for iOS, Android, macOS, Windows, and Linux variants.

Home Page: https://www.artoolkitx.org/

License: Other

CMake 0.48% C 66.48% C++ 28.39% Objective-C 0.74% Java 0.67% HTML 3.05% JavaScript 0.01% CSS 0.05% Shell 0.12% Makefile 0.02%
augmented-reality augmented-reality-applications cpp java android ios windows-10 macos visual-studio xcode

artoolkitx's Introduction

Read me for artoolkitX

Build state

macos iOS Android Linux Windows
Build Status Build Status Build Status Build Status Build status

What is artoolkitX?

artoolkitX version 1.0 is a software development kit (SDK) consisting of libraries and utilities that help developers implement the foundation of great augmented and mixed reality applications. The SDK includes some examples of applications that demonstrate the capabilities of artoolkitX. artoolkitX supports a wide-variety of platforms, including iOS and Android, and macOS, Windows, and Linux.

artoolkitX is free to use! The SDK is licensed under the GNU Lesser General Public License version 3.0, allowing for linking into both closed- and open-source software. Please read the file license to understand your rights and obligations when using artoolkitX.

Complete source is provided, and we encourage users to favourite the project on GitHub at https://github.com/artoolkitx/artoolkitx and log issues and read the documentation provided there, and to join the artoolkitX community via our homepage at http://www.artoolkitx.org.

artoolkitX's development is currently generously sponsored by Ethar, Inc. https://ethar.com. The open source project is administered by long-term developers of ARToolKit and from and the open-source community.

For experienced developers wanting to quickly make use of the SDK, please read the file Quick start. To read about the changes in this release, please read the file Release notes.

Join the artoolkitX community:

artoolkitx's People

Contributors

640kb avatar norips avatar philip-lamb avatar smarter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

artoolkitx's Issues

NFT - Imageset

Hello

I'm trying to use the artoolkitx_2d_tracking_example and adapt it to use it as a nftmarker example (since I don't find the OCVT package I cannot use the example with a 2DTracker).
The issue I encounter is that the nfttracker, when creating new trackable and loading it from the pinball.jpg file, calls the ar2ReadSurfaceSet function, which in turns calls ar2ReadImageSet (in the in the imagetSet.c file) where it tries to open "pinball.jpg.iset" which does not exist and I do not know what it the ".iset" extension is meant for.

I hope I am clear enough if you need me to clarify anything please let me know.

Any help would be appreciated because googling on the iset extension did not help a lot :(

Thank you

Windows 10: Error: a required OpenGL function counld not be bound.

I am trying to use the artoolkitx under Windows 10 now, but have problems with tools like check_id. The initializing fails, because some OpenGL functions couldn't be found. The precompiled binaries also fail with the same following messages:

[debug] Resized to 1280x720.
[info] Setting video configuration '-format=yuvs'.
[info] Opening artoolkitX video using configuration '-format=yuvs'.
[info] Using supplied video config "-format=yuvs".
[info] Using supplied video config "-format=yuvs".
[info] Requesting images in yuvs/YUY2 format.
[info] Video 640x480 (AR_PIXEL_FORMAT_yuvs), rowBytes=1280.
[info] Opened artoolkitX video 640x480@2Bpp (AR_PIXEL_FORMAT_yuvs).
[warning] Using default camera parameters for 640x480 image size, 45 degrees vertical field-of-view.
[debug] Video capture started.
[debug] arVideoLuma will NOT use Intel SIMD acceleration.
[debug] ARVideoView::initWithVideoSource.
[debug] arglSetupForCurrentContext: api = ARG_API_GL3.
[error] Error: a required OpenGL function counld not be bound.
[error] Error initializing display of video frames from source.
[error] Error: unable to init video view.
[debug] ARVideoSource::close(): called.
[debug] ARVideoSource::close(): stopping video.

The problem lies in arg_gl3.c in the function arglSetupForCurrentContextGL3, where ARGL_GET_PROC_ADDRESS fails. "glTexParameteri" is the first Opengl function of many where the binding fails.

ARGL_GET_PROC_ADDRESS("glTexParameterliv") returns NULL.
The call off GetLastError() returns "ERROR_PROC_NOT_FOUND"

Any Ideas how to solve this problem?

I already update my drivers. Here some informations about the hardware and software:

Windows 10 Enterprise, Version 1709
Intel I7-6700 CPU with an Intel HD 530 GPU (driver version 25.20.100.6373)
and a Nvidia Quadro P2000 (driver version 411.81)

Papers ArtoolkitX based on

Hello everyone, well like the title said. Im doing my final work from Computer Science, and i cannot find wich papers based on is ArtoollkitX

if someone can give me some references, like wich trheshold algorithm o wich arker detection tecniech use!

Thanks a lot

No Android release for 1.0.5

I noticed there are no Android release for 1.0.5. Does this mean that there will be no Android support in the future? What is the direction of this library concerning Android?

Extended tracking

Description:

Hello! Thank you guys for taking this on. I have a question:

Is it possible to do 'extended tracking' meaning:

  1. Scan a marker
  2. Display some content 'behind' the user or around them.
  3. User turns to look at the Augmented content, tracking continues.

I'm looking for something similar to this:

https://samples.argonjs.io/directionswebgl/

with the wrinkle that in my code, instead of "North" etc. there would be arrows; the arrows would direct users to other locations based on the marker that had been scanned.

Mostly I need ground plane detection, but the environment is really busy with people walking around, so I've found with commercial libraries, the Augmented objects disappear due to tracking being lost. The advantage of the simpler ArgonJS example, is the items still stay on screen.

If Gyro/IMU tracking could be added to make augmentations persist, that's really what most people want. Full SLAM would be nice, but this could be an intermediate step.

Thank you,

== John ==

Does this do 3D reconstruction?

I'm interested in doing 3D reconstruction of the environment seen in the video feed. Does artoolkit have this ability? (Specifically I want to do it in JavaScript)

ARVideo: failed to put GStreamer into PAUSED state!

Hi,

I'm trying to run the square tracking example in Ubuntu 16.04 with a recorded AVI video file using the Gstreamer module, but that error in the title occurs.

I set vconf in the source code to the following:
-module=GStreamer filesrc location=sample.avi ! decodebin ! ffmpegcolorspace ! capsfilter caps=video/x-raw,format=rgb,bpp=24 ! identity name=artoolkit ! fakesink

I have some experience with the ARToolKit, but on gstreamer library I'm a newbie. I make this string based on the documentation presented in the Wiki and this page: http://artoolkit.sourceforge.net/apidoc/video/

I tried many other configuration strings, but the "less-worse" case was that.

I thanks for any help.

when build android examples,adb install error.

mlideMacBook-Air:Examples mli$ adb install AR2DTrackingExample-release-unsigned.apk
AR2DTrackingExample-release-unsigned.a...d. 4.2 MB/s (22363223 bytes in 5.099s)
Please select on your phone whether can install the app by The ADB command?
pkg: /data/local/tmp/AR2DTrackingExample-release-unsigned.apk
Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]

if need more infomation,tell me ,when I build it in android studio.it's correct.

ArToolKitX with eclipse, error on run

Hello friend, i want to know if someone has been working with artoolkitx and eclipse and can help me

All the project compile perfect (based on square tracking example ITS THE SAME CODE), but when the app runs
the windows just close after glClearColor()

this happen after the first frame is captured, but appareantly everything just break when i do glClearColor

EDIT: My dev platform is linux and my targeting is linux

mk_patt.exe error IMFSourceReader::ReadSample

Hi,
I'm trying to use the mk_patt util from the latest release.
I'm repeatedly getting this error:

Error: IMFSourceReader::ReadSample

and i get a white window displayed.

I'm running on Windows 10

artoolkitx in Odroid UX4 with mali

I'm trying to run the Square Tracking example on an Odroid UX4 with Ubuntu Armbian image. I have managed to compile the linux version on this board by changing the CMake configuration files and I can run the example with the OpenGL Mesa libraries, but it runs very slowly. Due to this fact, I am trying to use libmali libraries that I think will be faster than the mesa libraries, but I have this error "Error creating window: Could not initialize EGL".

Has anyone tried to do anything similar?

Thank you for your time

How to detect multimarker in ARToolkitX

I found an example called square tracking example which can detect single marker like Hiro and Kanji. I wanna try multimarkers, like the multi-barcode-4x3.

I ran corresponding example scene in arunity5 and it works. So I copy the config string, which is "multi; multi-barcode-4x3.dat". The height parameter does not work here, I cannot change default height 40 to my height by the way. I can confirm that the marker is being loaded successfully, the UID is 0 all the time not like unity, which will be increased after every play.

Then I ran the square tracking example and it failed to find the markers. However, arunity5 can find them.

So any sample for multimarker c++ project or how do I set the parameter?

Thanks

kpmSetRefDataSet is slow in some android's phone

I test it, when I run the nftbook's example on my android phone,alway's have 5 second black screen on start, I was delete the get camera from internet's code, but when run with kpmSetRefDataSet,it's cost 5s.have any method to make it run fast???

missing build.sh

In readme is told:

  • To rebuild the SDK and examples for macOS, in Terminal navigate to Source and execute the command ./build.sh macos examples

but no build.sh file is present.

Displaying video on Android device

I can't find any documentation about displaying video in artoolkitx, I tried ARMovieProj in artoolkit5 but it can't compile. Can you help me, are there any example projects or resource about displaying video with artoolkitx ?

Cannot do CMake using latest master branch

When trying to cmake the examples, the following error occurs:
<FindSDL2.cmake> </FindSDL2.cmake> -- Could NOT find OpenGLES2 (missing: OPENGLES2_LIBRARIES OPENGLES2_INCLUDE_DIR) /usr/usr/local/opt/localC:/Users/Chris/Desktop/artoolkitx-master/artoolkitx-master/Examples/Square tracking example/Windows/../../../Source/depends/windows/include CMake Error at CMakeLists.txt:68 (include): include could not find load file: C:/Users/Chris/Desktop/artoolkitx-master/artoolkitx-master/Examples/Square tracking example/Windows/../../../SDK/lib/ARX/ARX.cmake Configuring incomplete, errors occurred!

Are there files missing in the repository?

Cannot compile examples, SDL2 missing

Downloaded the artoolkitX.for.Windows.v1.0.zip from http://www.artoolkitx.org/docs/downloads/ and
trying to compile the examples using Visual Studio '17, and I have also tried to create a new project file using CMakeGUI - in both cases CMake is complaining about SDL2 not being present. Where do I need to put the SDL2 files? I was able to find the includes and lib online, but no cmake files for SDL2 are available. Any clue?

Problems with forum

Hi,

I was following the progress of artoolkitx, because i'm planning to use it for a particular project, so I tried to post a couple of questions at the forum, but I noticed a lot of spam on it.

I'm troubled with the fact that artoolkitx might be agonizing... Is it the case?

Sorry for using github for this question, but the forum doesn't seem reliable to do anything useful on it.

Regards

Benchmarks information

Hello friend, sorry to post this question here, If is innappropiate you can delete. Im doing a final wokr with artoolkitx but i cant find any information about benchmark

is there some info about compare to another tools or about spped or accuracy?

Bye bye, and thanks a lot for what you are doing

Module Dependencie

Hi,

I cannot add the .aar as a module dependencie, it simply doesn't show as a module when I add it.
Does anyone knows a solution to this?

I'm using AS 3.1.2

Thank you

small issues

Hello

It seems there is a slight error in the file ARTrackerNFT.cpp at line 227
if ( **!**trackingThreadHandle) => should be if ( trackingThreadHandle)
otherwise tracking of the nft marker is never done.

Moreover I've encountered a very strange issue in ARController.cpp in the function int ARController::addTrackable(const std::string& cfgs)
In the artoolkitx_2d_tracking_example project, when calling the addtrackable function, the string is noted as "unreadable" in the dll or empty, whereas the same function called the same way in artoolkitx_squared_tracking_example has no problem whatsoever.
I have not been able to figure out why but to work around the project I have created a function that takes the adress of the buffer of the string as a uintptr_t that I access as a char * in the dll, and that does the trick.
Any idea of what the problem could or the test I could do to help you find what is going on?
Thank you

Error reading JPEG file

I am using ARToolkitX (iOS) with Unity (5.6.5f1). It works fine in the editor, however it crashed when deployed to iPad. Here is the error log:

[info] 
### Surface No.1 ###
[info]   Read ImageSet.
[info] Imageset contains 7 images.
[error] Error reading JPEG file.
[warning] Falling back to reading '/var/containers/Bundle/Application/8FC6DF5C-A6AB-4BC4-A1C5-134C0C9B73F4/SomeApp.app/Data/Raw/ARToolKit/Images/relief_eng-1.iset' in ARToolKit v4.x format.
SomeApp(3259,0x386c7000) malloc: *** mach_vm_map(size=1900408832) failed (error code=3)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
[error] Out of memory!!

I've been using this set of data before (ARTK v5.3) and had no problem.
Regenerate the dataset with artoolkitx_genTexData threw the same error.
Example from arunityx threw this too.

Looks like this line jpeg_create_decompress(&cinfo); in jpeg.c throws an error
Wrong JPEG library version: library is 62, caller expects 80

Include errors at artoolkitx api example, API not working like described

I'm trying to build my own artoolkitx project.
When including <ARX/ARController.h> I get the error from platform.h:

#error Must define one of: ARX_TARGET_PLATFORM_MACOS ARX_TARGET_PLATFORM_IOS, ARX_TARGET_PLATFORM_LINUX ARX_TARGET_PLATFORM_ANDROID ARX_TARGET_PLATFORM_WINDOWS ARX_TARGET_PLATFORM_WINRT.

When I define it in my main.cpp like "#define ARX_TARGET_PLATFORM_LINUX" I get the error
"operator '||' has no right operand"
(maybe its a compiler problem? Which should I use?)

When I comment lines 73-105 in the platform.h file and manually define the variables which are listed under the linux part, it compiles.

When I builded the Project I ran ./build.sh linux in the source folder.
I hope my program will work anyway (it should) but I would be interested how to solve this issue.

Furthermore copying the codelines from the simple example how to use the ARController didn't worked for me. The compiler complains on the function call c->startRunning:
"no matching function for call to 'ARController::startRunning()"
I figured out that this function needs more parameters, or am I wrong?

Thanks.

Slow Processing Speed

Does anyone have any suggestions on how to improve the processing speed for the square tracking? I get around 30fps if the input is 640x480, 10fps@720p and just 5fps@1080p. No single CPU core is maxing out. Whats the bottleneck?

I also tried to move the processing off to a different thread, keeping the render thread clean. However, this didn't improve the tracking speed either. Of course it improved the rendering speed, but then the 3D rendering was offset from the camera input as the marker moved. So I reverted to doing everything in the render thread, like in the official example.

Debug and Release mode have the same framerate.. any clue?

2d Barcode support

There is some documentation on doing 2d Barcodes such as 3x3 to 5x5 with hamming codes ect. The interface is no exposed in Artoolkitx for at least the Android built library.

These are missing:

arSetPatternDetectionMode(arHandle, AR_MATRIX_CODE_DETECTION);
arSetMatrixCodeType(arHandle, AR_MATRIX_CODE_3x3_HAMMING63);

It could use an example as well.

Segmentation Fault Square Tracking Example

Hello everyone, im dealing with and error when i try to run Square Tracking Example

[info] Created OpenGL 3.2+ context.
[info] artoolkitX v1.0.0 initalised.
[info] Creating ARTrackableSquare with pattern='/media/rober/DatosLinux/ProyectosEclipse/Prueba1/hiro.patt', width=80.000000.
[info] Loading single AR marker from file '/media/rober/DatosLinux/ProyectosEclipse/Prueba1/hiro.patt', width 80.000000.
[info] First square marker trackable added; enabling square marker tracker.
[info] Added trackable (UID=0), total trackables loaded: 1.
[info] Creating ARTrackableSquare with pattern='/media/rober/DatosLinux/ProyectosEclipse/Prueba1/kanji.patt', width=80.000000.
[info] Loading single AR marker from file '/media/rober/DatosLinux/ProyectosEclipse/Prueba1/kanji.patt', width 80.000000.
[info] Added trackable (UID=1), total trackables loaded: 2.
[info] Starting...
[info] Setting video configuration '-dev=/dev/video1'.
[info] Opening artoolkitX video using configuration '-dev=/dev/video1'.
[info] Using supplied video config "-dev=/dev/video1".
[info] Using supplied video config "-dev=/dev/video1".
[info] === debug info ===
[info] vd.driver = uvcvideo
[info] vd.card = iCatchtek SPCA6350
[info] vd.bus_info = usb-0000:00:12.2-5
[info] vd.version = 265485
[info] vd.capabilities = -2078277631
[info] device_id: '/usb 04fc:6350 iCatchtek SPCA6350/'.
[info] Width: 640
[info] Height: 480
[info] Palette: YUYV
[info] Type: Camera
[error] ioctl error: Invalid argument
[error] Control 9963776 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963777 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963778 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963779 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963792 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963793 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963795 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963776 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963777 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963778 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963779 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963792 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963793 is not supported
[error] ioctl error: Invalid argument
[error] Control 9963795 is not supported
[info] Opened artoolkitX video 640x480@4Bpp (AR_PIXEL_FORMAT_BGRA).
[info] Fetching external camera parameters.
[info] cparamSearch beginning search for /usb 04fc:6350 iCatchtek SPCA6350/, camera 0, aspect ratio 4:3.
[info] Waiting for video source.
[warning] Using default camera parameters for 640x480 image size, 45 degrees vertical field-of-view.
[info] Video source is running. (Waited 6105 calls.)
[info] arVideoLuma will use Intel SIMD acceleration.
Segmentation Fault (`core' generado)

building for Unity

I see the .zip's for Unity in the artoolkitx 1.0.1 release. I know arunityx is supposed to release in the near future, until then is there some documentation on how to get artkx working in Unity 2017.4 LTS?

Feeding in custom frames

Hi there,
I'd like to use the ARController to detect markers from a RAW RGB\RGBA BYTE buffer and not use the libARVideo class for connecting to the camera. Instead, I already have all my frames decoded and ready to be computed. Is this possible with the current version of artoolkitx? Or would I have to change the library myself?
Thanks!

How to run

Who succeeded in running? None of these APK can run.

run android Examples:

E/libAR: [error] ARController::androidVideoPush2: ARVideoSource is not running.
E/libAR: [error] ARController::androidVideoPush2: ARVideoSource is not running.

feature: allow user to request no online cparam search

When I run the android example, Square tracking example, used the android studio, but it didn't work. It occurred a error that "libAR: [error] ARController::androidVideoPush2: ARVideoSource is not running". And the camera have no picture, just black screen. But after about twenty more or less minute, it can work and the camera can display the right video. But I want to save the error. If not, I will spend more time to wait.
I also looked the discription #25. But it does not solve.
How can I do to save the error?
I‘m Looking forward to your reply as soon as possible. thank you.

Markerless tracking

Have you thought about implementing a markerless tracking yet? In apples ARkit, it is possible to track planes/surfaces instead, which makes for a great AR experience not having to worry about custom markers. How far away are we from an implementation into artoolkitx? Has anyone attempted at implementing this themselves?

JavaScript version of ARToolKitX

Cheers,

By any chance, are you considering maintaining/providing a JavaScript version, using emscripten to compile c/c++ to asm.js or even Wasm.js?

Problems with cmake

I have meet the problem like this

-- Detecting C compile features - done
-- Using single-configuration CMake generator.
-- Found OpenCV: /usr/local/lib64/libopencv_calib3d.so;/usr/local/lib64/libopencv_features2d.so;/usr/local/lib64/libopencv_flann.so;/usr/local/lib64/libopencv_highgui.so;/usr/local/lib64/libopencv_videoio.so;/usr/local/lib64/libopencv_imgcodecs.so;/usr/local/lib64/libopencv_video.so;/usr/local/lib64/libopencv_imgproc.so;/usr/local/lib64/libopencv_core.so
-- Defined: ARX_TARGET_PLATFORM_LINUX=1
-- Found JPEG: /usr/lib64/libjpeg.so
-- Found OpenGL: /usr/lib64/libGL.so
-- Found OpenGLES2: /usr/include
/usr/usr/local/opt/local
-- Found OpenGL3: GL
-- Opting for desktop OpenGL. Set ARX_GL_PREFER_EMBEDDED to change.
-- Found GTSAM: /run/media/shen/D0CAFE99CAFE7B54/Opencv/7_AR/1_AR_toolkitx/thirdpartly/gtsam/install/lib/libgtsam.so
-- Found CURL: /usr/lib64/libcurl.so (found version "7.29.0")
/usr/lib64/libcurl.so
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.27.1")
-- Checking for one of the modules 'libudev'
-- Checking for one of the modules 'libdc1394-2'
-- Checking for one of the modules 'gstreamer-1.0'
CMake Error at /usr/local/share/cmake-3.8/Modules/FindPkgConfig.cmake:641 (message):
None of the required 'gstreamer-1.0' found

Call Stack (most recent call first):
ARX/ARVideo/GStreamer/CMakeLists.txt:2 (pkg_search_module)

-- Checking for one of the modules 'glib-2.0'
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.7")
-- Found OpenGLES2: /usr/include
/usr/usr/local/opt/local
<FindSDL2.cmake>
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
</FindSDL2.cmake>
-- Found SDL2: /run/media/shen/D0CAFE99CAFE7B54/Opencv/7_AR/1_AR_toolkitx/thirdpartly/SDL2-2.0.9/install/lib/libSDL2main.a;/run/media/shen/D0CAFE99CAFE7B54/Opencv/7_AR/1_AR_toolkitx/thirdpartly/SDL2-2.0.9/install/lib/libSDL2.so;-lpthread
<FindSDL2.cmake>
</FindSDL2.cmake>
<FindSDL2.cmake>
</FindSDL2.cmake>
CMAKE_SOURCE_DIR /run/media/shen/D0CAFE99CAFE7B54/Opencv/7_AR/1_AR_toolkitx/Source
<FindSDL2.cmake>
</FindSDL2.cmake>
-- Configuring incomplete, errors occurred!

Displaying the video

Hello,
im currently trying out the toolkit on MacOs. I created a Cocoa Application and am able to import the toolkit and load the camera. But I can't get the Video image to display in my Sceneview. The drawVideo function says that it displays to the current OpenGl context, I tried to set the scenes context using the CGLSetCurrentContext but nothing is displayed.Is there any Documentation for the drawVideo functions , I can't find any. There is a warning which says "[warning] ARG: Request for to render multi-planar pixel format in colour not supported. Will render in mono." but I don't really get whats going on there. The example project works on this Mac, can you help me out with my problem?

Segmentation fault on capture frame

Hello guysim trying to copy my artoolkitx project to another computer

in the original computer everything works great but in the new one

EDIT: MY PROCESSOR IS I686

there is a core dump in arController-captureFrame

here is the stack trace
#0 0xb7f104a8 in arVideoLuma () from /home/robert/03-Facultad/00-ComputerVision/00-artoolkitx/SDK/lib/libARX.so.1
#1 0xb7f0f876 in ar2VideoGetImage () from /home/robert/03-Facultad/00-ComputerVision/00-artoolkitx/SDK/lib/libARX.so.1
#2 0xb7edcbc1 in ARVideoSource::captureFrame() () from /home/robert/03-Facultad/00-ComputerVision/00-artoolkitx/SDK/lib/libARX.so.1
#3 0xb7ed2468 in ARController::capture() () from /home/robert/03-Facultad/00-ComputerVision/00-artoolkitx/SDK/lib/libARX.so.1
#4 0x0808882c in main (argc=3, argv=0xbfffef64) at /home/robert/03-Facultad/00-ComputerVision/00-artoolkitx/Examples/01-Tesis/main.cpp:136

Is a BUG in 'forward-backward' tracking by KLT ?

cv::calcOpticalFlowPyrLK(_prevPyramid, _pyramid, trackablePointsWarped, flowResultPoints, statusFirstPass, err, winSize, 3, termcrit, 0, 0.001);
cv::calcOpticalFlowPyrLK(_pyramid, _prevPyramid, flowResultPoints, trackablePointsWarpedResult, statusSecondPass, err, winSize, 3, termcrit, 0, 0.001);

Should check whether the trackablePointsWarped points are in current frame region first?

Support optical see-through in calibration and examples.

Move the discussion from https://github.com/artoolkit/artoolkit5/issues/408

I don't use ARToolkitX due to the requirement of "calib_opticalProj".
The main purpose is to use calibration parameter(.dat) doing Optical_Calibration.

I built the project successfully in Android Studio and got the optical calibration result as well.
But the result came from the default camera parameter(320*240, FOV 45 degree), it's not the parameter of my camera.

By tracing the source code, I found that gVid = ar2VideoOpen(""); always returned null.
And ar2VideoGetCParamAsync(gVid, nativeVideoGetCparamCallback, NULL); also returned null because of the variable gVid is null from ar2VideoOpen("").
Null value of gVid always made program using default camera parameter.That wasn't my purpose.

More tracing,
ARLOGe("ar2VideoOpen: Error: module \"Android\" requires ar2VideoOpenAsync.\n");

It lead me to
AR2VideoParamAndroidT *ar2VideoOpenAsyncAndroid(const char *config, void (*callback)(void *), void *userdata)
I had no idea how to implement the callback function so I got stuck here.

Suffered from that, I can't use my camera parameter, which is generated from artoolkit6-calibration-android.
Does the implementation of function ar2VideoOpenAsyncAndroid is the only solution? or there's another way to load my camera parameter?

Thanks for reading the post.

unresolved external symbol

I am using windows and vs2017.

I ran build.sh in source folder and build the solution.

Some linking problems happened. Actually the lib is in the correct place. I don't know why.

Severity	Code	Description	Project	File	Line	Suppression State
Error	LNK2001	unresolved external symbol __imp_arVideoSaveImageJPEG	artoolkitx_check_id	
Error	LNK1120	1 unresolved externals	artoolkitx_check_id	
Error	LNK2001	unresolved external symbol __imp_arPattSave	artoolkitx_genMarkerSet	
Error	LNK1120	1 unresolved externals	artoolkitx_genMarkerSet		
Error	LNK2019	unresolved external symbol __imp_ar2GenFeatureMap referenced in function main	artoolkitx_genTexData	
Error	LNK2019	unresolved external symbol __imp_ar2FreeFeatureMap referenced in function main	artoolkitx_genTexData	
Error	LNK2019	unresolved external symbol __imp_ar2SelectFeature2 referenced in function main	artoolkitx_genTexData	
Error	LNK1120	3 unresolved externals	artoolkitx_genTexData	
Error	LNK2001	unresolved external symbol __imp_arPattSave	artoolkitx_mk_patt	
Error	LNK1120	1 unresolved externals	artoolkitx_mk_patt	

No video source or video source is closed

I have downloaded the latest release and when running "artoolkitX 2d Tracking Example" I get a black screen followed by the error message "No video source or video source is closed" constantly being printed in the console.
The square tracking example works without any issues.

XCode version 9.3 Beta
iOS 11.3 Beta

Can't build artoolkitx on linux platform

Hi.
I have installed all required library in the System-requirements page on Ubuntu14.04, some libraries are updated to a new version, such as libavcodec58 and libavformat58 and libpng16-35, but I think it should't cause the failure. When I build from source code, I got something error like the following:

/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c: In function ‘printPalette’:
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:158:15: error: ‘V4L2_PIX_FMT_ARGB444’ undeclared (first use in this function)
case (V4L2_PIX_FMT_ARGB444): s = "ARGB444"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:158:15: note: each undeclared identifier is reported only once for each function it appears in
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:159:15: error: ‘V4L2_PIX_FMT_XRGB444’ undeclared (first use in this function)
case (V4L2_PIX_FMT_XRGB444): s = "XRGB444"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:160:15: error: ‘V4L2_PIX_FMT_ARGB555’ undeclared (first use in this function)
case (V4L2_PIX_FMT_ARGB555): s = "ARGB555"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:161:15: error: ‘V4L2_PIX_FMT_XRGB555’ undeclared (first use in this function)
case (V4L2_PIX_FMT_XRGB555): s = "XRGB555"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:163:15: error: ‘V4L2_PIX_FMT_ARGB555X’ undeclared (first use in this function)
case (V4L2_PIX_FMT_ARGB555X): s = "ARGB555X"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:164:15: error: ‘V4L2_PIX_FMT_XRGB555X’ undeclared (first use in this function)
case (V4L2_PIX_FMT_XRGB555X): s = "XRGB555X"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:169:15: error: ‘V4L2_PIX_FMT_ABGR32’ undeclared (first use in this function)
case (V4L2_PIX_FMT_ABGR32): s = "ABGR32"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:170:15: error: ‘V4L2_PIX_FMT_XBGR32’ undeclared (first use in this function)
case (V4L2_PIX_FMT_XBGR32): s = "XBGR32"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:171:15: error: ‘V4L2_PIX_FMT_ARGB32’ undeclared (first use in this function)
case (V4L2_PIX_FMT_ARGB32): s = "ARGB32"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:172:15: error: ‘V4L2_PIX_FMT_XRGB32’ undeclared (first use in this function)
case (V4L2_PIX_FMT_XRGB32): s = "XRGB32"; break;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c: In function ‘ar2VideoOpenV4L2’:
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:449:36: error: ‘V4L2_PIX_FMT_ABGR32’ undeclared (first use in this function)
vid->palette = V4L2_PIX_FMT_ABGR32;
^
/data/project/artoolkitx/artoolkitx-master/Source/ARX/ARVideo/Video4Linux2/videoV4L2.c:453:36: error: ‘V4L2_PIX_FMT_ARGB32’ undeclared (first use in this function)
vid->palette = V4L2_PIX_FMT_ARGB32;
^
It seems that V4L library may not be found. But I have already installed it. No idea how to fix. Thank you for your help.

V4L2 with MJEPG

Currently if using module=V4L2, most of RGB and YUYV palette are supported. But most of the high resolution cam with USB interface only have low fps is using RGB and YUYV, in order to have a reasonable frame rate, the cam has to configure as MJEPG which is the compressed format. Are there any workaround to use module=V4L2 with MJEPG palette?

Ubuntu - Thresholding not updating

Well like the title says, im running square tracking example but the thresholding is not updating

if i focus the camera to marker on first frame. The cube appears but never go away, its like the thresholding never update

intrinsic camara parameters file

Hello,
is it possible to use a '.xml' file which includes camera paramters like "camera_matrix" and "distortion_coefficients" instead of a "camera_para.dat" file ?
Thank you.

How to run square-tracking-example with vconf parameters

Hello,
I'm trying to run the artoolkitx square_tracking_example with a Intel RealSense D435 Camera.
I like to use the --vconf option since the default input device is the depth stream (pixel format Z16).
Therefore the vconf string i like to use is :
"-module=V4L2 -dev=/dev/video2 -width=1920 -height=1080 -framerate=30"
All parameters should work but executing this gives me the error
"[error] No video source or video source is closed."
Running it without the "-framerate" option gives me a green screen.

How can I run the example with the parameters from above?
Thank you for your support.

Can't build artoolkitx on Android platform

I'm trying to build artoolkitx for android on a Windows machine and it keeps failing.
My setup is:
Windows 10
Cygwin
Android SDK 21
Andoird NDK r13b
I also have similar problem building for android on MacOs
I've attached the output of issuing ./gradlew -q assembleRelease --info
build_info.log

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.