-
Notifications
You must be signed in to change notification settings - Fork 3
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
Hello Matthew #2
Comments
I spent a good bit of time playing with this today, but you sound like you have gotten farther, can you zip your working folder up and load it up in google drive so that I can try what you've done? Or itemize the changes you've made in Visual Studio so I can get on the same page? |
"to make a try to run something on windows, to see only 6 little windows with your fingers moving in realtime for now, just copy turbojpeg.dll file to build folder, after compiling in VS Community 2015, then launch daemon_plus.exe directly from build folder, without modifying any code in fact as soon as your path is without any blank spaces (C:\touch_plus_source_code\build), see : Ractiv/touch_plus_source_code#36" So then I only was looking for commented code, as I had explained, to try to launch wincursor_plus, nothing else, but it runs in console mode, only talking about udp port. Unfortunately, I erase the folder to make other tests as I was suspecting blank spaces path problem. |
After a good bit of hacking around I've gotten as far as you did and enabled the win_cursor_plus entry point as well as the UDP port opening process. That all appears to work and yet nothing more happens in the app. However, I can't find anywhere that anything is ever done with the UDP session. No where that data is sent over. The code looks incomplete to me. :( I'll have to spend some time on it to fully understand the flow, it's a complex project with a lot of moving pieces. |
Hi Matthew I've just left a post on Umar's github to see if he could help us : "Hi Umar To me, Lai must have had build a kind of debugging console mode that must be disabled somewhere in code to get output on windows interface with win_cursor_plus to get the famous pointing green circle as seen on v0.55b version. Maybe some true or false to change somewhere or part of the code has to be commented or uncommented somewhere. As you seems to be cleaver on many things Umar, could you explain us, to Matthew and me :
Thanks in advance, Umar, if you find a little time and answers to us. Kind regards, Christian" |
Hi touchhope, I am sorry for not responding earlier on this. I did go through the code for a couple of hours a few weeks back and in its current state it has been left in a debug state where the dev was midway through adding some functionality and has lots of testing code splattered across the code. Secondly the code has very few comments which makes it very hard to understand functionality throughout. I think for it to be fully functional and usable it would require a lot of time to work on it.
This part of the code is commented in the code which I was able to run but still wouldn't move the cursor based on my movements. I will see if I can get this working over the weekend so that even with buggy movement end users can have a controllable cursor.
UDP is a networking protocol and the touch plus is built with multiple different executable (daemon, gesture recognizer, cursor control) all components talk to each other via UDP.
I am guessing this would be for controlling the cursor on windows 8 and above as then the application would need to have a Microsoft certificate to be able to work as an input device.
NWJS is a framework to run JavaScript apps on desktops using chrome. I am not sure if the menu application is made using NWJS or directly via flash but it just communicates via UDP with the daemon process which is made in c++ and is part of the project. |
Hi Matthew, Robert Sweetman (http://www.robertsweetman.co.uk/) says he will send next week a unit to Dr. Andrea Tagliasacchi. I've just send him this email in response to his question about Kickstarter Haptix project and also on http://faceshift.com/studio/2015.2/introduction.html#prerequisites : Hi Andrea Here's initial Kickstarter's project, called Haptix : https://www.kickstarter.com/projects/haptix/haptix-multitouch-reinvented/comments Jerry Bocci posted on 23th February : Don't forget, they also had assistance from: I guess samuel.hsueh@etron.com.tw has technical details on eSP870 Etron 3D Depth-Map Camera Controller : https://plus.google.com/107414035407354334983 Maybe let's also have a look at here : https://www.leopardimaging.com/uploads/LI-ESP870-STEREO-M031_datasheet.pdf http://www.etron.com/en/pr/latestnews2.php?ID=341 The initial Ractiv's roadmap was : Me and my ACER Aspire R7 with Ezel Hinge are particularly interest with "Table mode (manual calibration on untextured surfaces)" : I dream of controling my pc directly from the flat surface of my white physical desktop. But is it possible if the sensor has no landmarks to determine 3D positions of my fingers on a virtual untextured surface to detect hard or soft pressure of fingerprint for example ? Indeed, the 07/25/2015 version I put to my dropbox for Umar (umarniz/TouchPlusLib#2) must have been used to compile v0.55b (https://www.youtube.com/watch?v=ulFTmjiwmAA), and used a disparity mapping system with two sorts of cambered chessboards images (0.jpg and 1.jpg in C:\touch_plus_source_code\build\userdata\0101007491) and references to 4 keys on querty keyboard on calibration step. I particularly intrigued by the 565 .nrocinunerrad files in C:\touch_plus_source_code\build\database and \labels (rocknroll1 to 19, rest0 to 350, poit1(all alone) and point0 to 206) which seems to generate all sorts of numbers calculations, see : Ractiv/touch_plus_source_code#36 I know nothing about math and geometry, I'm full of paradox because I've studied letters and languages and however I love computer engineering and technology in general. The last 12/07/2015 version, very confused with unity game engine inside, send nothing to udp channel for win_cursor_plus, but Windows 10 is so buggy even with the last builds, I'm fed up with Microsoft, often my PC just don't load the new interface and to shutdown I have to push Windows key + R to run shutdown /s ! My favorite linux distro is Salix from Slackware Darkstar. By the way, do you think the device could also have been badly designed electronically and so not giving full access to all of the eSP870 possibilities ? Cheers, Touchhope Message du : 12/03/2016 21:49 Hello there, I am always clearly interested in looking at new sensors. As I mentioned in my earlier messages is how does it compare to commercial software. Recently Intel announced its linux drivers, thus finally allowing me to perform research on up-to-date hardware. So, how does your device compare to what’s already out there? My colleagues at FaceShift had a comparison (somewhere on this site) visually analyzing the performance of various hardware with their product. And how does your technology compares internally? (i.e. what are you doing differently that gives you better results). Have a great day |
I forgot to tell you Lokki (Lachlan Pollock) and Vic Jang, student at UC Davis, California will provide Maz with a unit (Lokki's programmer friend on OpenCV) in California too (and close to Vic), so that he and his team can have a look at the hardware as well as test software. |
Hi Matthew, If you have Visual Studio 2013 without Update 4 on your computer, could you please have a look at Ractiv/touch_plus_source_code#38 ? Thanks in advance, Cheers, Touchhope Trying to compile earlier 07/08/2015 July build with VS Community 2015 #38 Hi anyone, As Lachlan Pollock (Lokki) said "I actually had it functioning in Windows 7 and even tried playing some minecraft with it. But having briefly used the Touch+ I've got to say I enjoyed the experience and found it a lot more natural than the leap ever was on a flat surface.", I've asked him for details. He told me it was an earlier July build, so I'm trying to compile earlier 07/08/2015 July build with VS Community 2015. But after copying missing "dependencies" folder from 07/14/2015 version and having incoherent paths corrected in initial "dependencies" folder to avoid include errors, I still get a lot of compiling others errors (see below and the end). Can someone, gifted enough on c++ (I don't feel able to resolved all the errors actually shown on VS Community 2015) could make a try compiling under Visual Studio 2013 without Update 4 because I don't have this VS version on my computer ? Here is on dropbox the touch_plus_source_code.zip file to extract in a "c:\touch_plus_source_code" folder : https://www.dropbox.com/s/x40qxjkd3uho1nq/touch_plus_source_code.zip?dl=0 In needed, here is state of code on 07/08/2015 : https://www.dropbox.com/s/0bp4c1c3zz9djsd/07082015.zip?dl=0 Thanks in advance, Cheers, Touchhope Post Scriptum : Don't forget the Build instructions:
typedef void *PVOID; Add one line, so that they become: #define POINTER_64 __ptr64 If you couldn't save "winnt.h", restart Visual Studio as administrator and try again. You should be able to build the solution now. Here are the shown errors on VS Community 2015 : Gravity Project File No. Description State Line deleting |
Hi, everyone ! I've succeeded in compiling different states of Ractiv's code along 2015's months, even now on Windows 10 using VS Community 2015 and Find And Replace Tool (https://findandreplace.codeplex.com/) to make all includes pointing to the right dependencies, but, although I found a lot of interesting things on the net, I've failed getting the famous main green pointing circle from win_cursor_plus process : https://github.com/frog/touchproxy https://code.msdn.microsoft.com/windowsdesktop/Touch-Injection-Sample-444d9bf7 http://www.getcodesamples.com/src/5A0342CF http://www.codeproject.com/Articles/607234/Using-Windows-Interaction-Con Any idea to get udp channel sending tracking data to win_cursor_plus process ? On some of the late states of code, it seems to send something to udp channel but you get the blue error message "Your pc cannot run this program on this windows version." if you don't run it under the software folder "C:\Program Files (x86)\Ractiv\Touch+ Software", but on the latest states it only run in a path without blank spaces, such as "C:\touch_plus_source_code\build". On both cases, you can't get any green pointing circle. Anyone with good knowledge on c++ and csharp to help us ? Anyone with the zip file of the very earlier 2015, July functional state of code mentionned by Lachlan Pollock ? @vic Jang and Lachlan Pollock : Any news from Maz and his team on OpenCV in California ? Did Vic Jang got in touch with Maz ? Cheers, Touchdespair ;-( |
Hi everyone ! It's again Touchhope from http://gharbi.me/ractiv/ ! Well, with my slow old brain, I've only just understand that it was possible to get ancient states of touchplus source code from github, clicking on "307 commits", then on the update that you want and then on "Browse files" on the right, then on the green button 'Clone or download", for example at https://github.com/Ractiv/touch_plus_source_code/commits/master?page=9 from the very beginning. After a lot of search on internet forums, to solve all compiling errors under vs2015 community from vs2013 code, (adding compiling options in properties under vs2015, adding several includes on top of a lot of the cpp files such as #include "stdafx.h", adding file in C:\External Storage\Dropbox\projects\touch_plus_source_code\track_plus_core\track_plus\imu.cpp, making all includes pointing to right absolute path dependencies, using Find And Replace Tool (https://findandreplace.codeplex.com/), I have zipped an ancient state of code from early 2015 July with all functionnal calibration steps and an udp channel opened for win_cursor_plus process which is launch in console mode unfortunately, in file win10vs2015touch_plus_source_code.zip, available on dropbox at https://www.dropbox.com/s/7oh7defgiwpe42z/win10vs2015touch_plus_source_code.zip?dl=0 To get it work on your win10, first install Touch+ Software.exe to get path C:\Program Files (x86)\Ractiv\Touch+ Software on your pc, then overwrite all its content with "build" folder content. Don't forget to set your keyboard to English QWERTY instead of AZERTY to perform calibration steps ! Be patient while moving your fingers, and hold finger long time enough to let the software detect the key pressed on the keyboard ! Then you could make some code modifications under Visual Studio 2015 Community you'll find here : https://www.visualstudio.com/en-us/products/vs-2015-product-editions.aspx, loading track_plus.sln project file in C:\touch_plus_source_code\track_plus_visual_studio. I hope it will help someone (Matthew H. Fogle maybe, or Umar Nizamani when he would be able to buy a new win10 pc, or Maz and his team on OpenCV in California, or someone else with better knowledge than me, a pure self-educated c++ dabbler and beginner) to produce some hybrid version under win10 and vs2015 (of old and last state of code from 1st of 2015 December). Now the technical challenge is maybe to pick up some portions of code in the different states of code during 2015 year and to mix it adding it maybe to this basic version on win10 and vs2015, instead of vs2013 and win7 or win8 ? I'd like to end with these words from backer Robert Sweetman one year ago : "As someone once said... No man is an island. Thus no great things come from someone who cannot communicate with their fellows as they remain forever doomed as legend in their own mind only. An inability to deliver on anything, promises, product etc. leads to further isolation. Seek first to understand before trying to be understood. Be of service to others ahead of expecting rewards for empty words. From the short interview text below you could drive a bus through the perceptual issues/potential roadblocks associated with this insular approach. I now formally abandon all hope of seeing anything from this venture. The smartest people in the world are usually sunk by their inability to communicate." You're so right Robert ! Indeed what about Albert Einstein ? Was he able to communicate enough ? And Nicolas Tesla ? And Rudolf Diesel ? And Xue Lai (or Lai Schwe ?) And Darren Lim ? Surely, maybe too much complicated thoughts to get explain to other people ! Could someone tell me (Corey Manders maybe at IEEE or Dr. Andrea Tagliasacchi ?) why this win_cursor_plus process isn't launched properly to show its big green pointing circle ? Indeed if you'll make a try under vs2015 with this old state of code from vs 2013, you'll need to first install "vs2015 nuget package manager", you'll find here : https://visualstudiogallery.msdn.microsoft.com/5d345edc-2e2d-4a9c-b73b-d53956dc458d and then, once installed in vs2015, going in the nuget manager in tools menu, click on browse thumb to search for missing "TCD.System.TouchInjection. 1.0.0" ! Cheers everyone and thanks in advance for any eventual help ! Touchhope settings file loaded a: 10.8047 b: -3.57327 c: 116.99 d: 37.003 message received open udp channel win_cursor_plus0 |
OpenCV Error: Assertion failed (0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows) in cv::Mat::Mat, file C:\builds\2_4_PackSlave-win32-vc12-shared\opencv\modules\core\src\matrix.cpp, line 323 |
Regular update commit number d44e966 on 5 Aug 2015 is much more functional than commit number 65abaf6 on 8 Jul 2015 that I previously toughly solved on compiling errors under vs2015 community : absolutely no compiling errors under vs2015 community apparently very fast gesture recognition and 4 keys press detection during the 3 calibration steps also udp channel messages sent and received between track_plus and win_cursor_plus processes good base I think to try to understand what wrong in subsystem console instead of subsystem windows launch maybe (https://msdn.microsoft.com/en-us/library/f9t8842e.aspx) I'm definitely not gifted enough on C++ coding language ! However I still try to change different parameters and still search on internet forums. I'm quite obstinated when I start to solve something ! |
Hi Jerry ! Pleased to finally get in touch(plus ;-) ) with the famous Jerry Bocci Jr, also a kind of "touchhope" at https://www.kickstarter.com/projects/haptix/haptix-multitouch-reinvented/comments ! It was funny the other day when I've sent an email to australian backer Lachlan Pollock (friend of Maz), asking him to post you on Kickstarter a request of technical explanations on how you finally get it to work on your pc ! Indeed, as the frenchman that I am, I didn't understood on first read it was a joke ! In the minute I've sent another email to Lokki to say him I realize you were joking. He said you're probably a sarcastic man and of course you were ironic on that post ! Lai must be laughing at us seeing how stupid we are on not understanding his few commented code. Or maybe he is in a depressive phase so he is psychologically washed out after so big coding effort last year. Fortunately a band of stupid people can become intelligent if they communicate with each other. That's what we need : a good brain storming ! Lai is surely a brillant young engineer but, as he will grow old, he will be learning to better communicate with other people. No man is an island and what is more exciting in human life is surely what we can learn one from each other to go further together. You know like monkeys and in 2016 we are in the chinese year of monkey, aren't we ? I invite Lai to reestablish dialog with us, people who still believe in your genious idea and project ! Come on Lai, thanks in advance man, you're the best :D ! You're mustn't be a dog and us neither, we're human beings ! I guess what is preventing win_cursor_plus process from being launched properly must be a silly thing such as "true" or "false", or "1" instead of "null" in some function. As a csharp expert like Matthew H. Fogle, maybe you could explain us how a csharp exe is controlled ? Is there such thing as the manifest file for example ? (https://msdn.microsoft.com/en-us/library/1w45z383%28v=vs.110%29.aspx) What about C:\touch_plus_source_code\track_plus_visual_studio\win_cursor_plus\ cs files, also in TUIO folder ? Maybe some examples to examine at http://www.tuio.org/?software and http://blog.mosthege.net/2012/08/19/windows-8-touchinjection-with-c/ and http://touchinjector.codeplex.com/ where you suspect windows firewall to get implicated on port blocking (blue message from last commit in December) ? To me there could also be a kind of debugging console mode that Lai has established to develop his code and which is preventing win_cursor_plus to get launched in windows mode : some lines somewhere to get commented or uncommented maybe ? Just time to find ! I'm sure one day we'll all, even Lai, be renamed Tom, Jerry, ultimate mouse killers ! I'll be glad to read you also on http://gharbi.me/ractiv/ soon Jerry ! Keep being confident in finding a solution together ! Cheers, Touchhope (or Christian or The Hopin'Frog or The Artist or Prince or the unbelivable ramblings spammer at http://gharbi.me/ractiv/ !) |
Hi all the seekers (and researchers) for functional solution for the touchplus device's software ! Well in the past few days, I didn't found much things : If you don't want console to get shown, you just have to comment "// #define SHOW_CONSOLE" before compiling in file track_plus_core/daemon_plus/globals.h ! Then the 4 processes (daemon_plus.exe, menu_plus.exe, track_plus.exe and win_cursor_plus.exe) still get launched but without showing any console, like in the commit 950e348 on 6 Oct 2015 (with pretty circle jauge instead of 4 calibration steps with 3 gestures and 4 keys pressed), which indeed shows no console while running, but unfortunately with inert launched process "win_cursor_plus.exe", maybe not receiving any udp port message from track_plus.exe ! Well it would be cool to finally understand how and where in code udp messages are sent from track_plus process to win_cursor_plus process and its subprocess "MainWindow" as seen on taskmgr. If it could help, for the specialists on csharp, here is the debugging errors tracking while testing a commit but I don't know which anymore, I've obtained the following errors from launched win_cursor_plus that just crashed : "Unhandled exception: System.Windows.Markup.XamlParseException: The constructor invocation on the type 'win_cursor_plus.MainWindow' that matches the specified binding constraints threw an exception. ---> System.IO.DirectoryNotFoundException: Could not find a part of the path 'C: \ touch_plus_source_code \ build \ ipc'. |
Martin Kaltenbrunner have just answered my demand of help : mkalten commented 12 hours ago • edited "hi @touchhope, honestly I never heard of this device before ... looks interesting though. you could try to use one of the available TUIO client demos for any platform or language and see if you can receive anything on their UDP port (which seems to be different from the standard TUIO UDP port 3333) you could also try to update the TUIO CSHARP code, which would also be the right place for this discussion, since this here is the C++ version ... https://github.com/mkalten/TUIO11_NET if you want to provide me with such a device, I can have a closer look of course edit: it also seems that they modified/extended the TUIO protocol, which probably results in making it incompatible with standard TUIO software. what's exactly the function of the win_cursor_plus component?" |
Hello Matthew
First, a big thank you for your csharp touchplus device commander program last year !
Though I have posted last month a message on github to Umar Nizamani
umarniz/TouchPlusLib#2
to get his help on C++, I think we also need a csharp expert to have win_cursor_plus.exe working on https://github.com/Ractiv/touch_plus_source_code/tree/master !
Indeed, in VS Community 2015, I've uncommented some code on main.cpp in track_plus to get win_cursor_plus.exe compiled and running from "C:\touch_plus_source_code\build", after copying turbojpeg.dll to build's folder, because tasklist command in processes.cpp doesn't run from software's installer folder "C:\Program Files (x86)\Ractiv\Touch+ Software" for blank spaces characters in path.
///*
static bool show_wiggle_sent = false;
if (!show_wiggle_sent)
{
if (child_module_name != "")
ipc->open_udp_channel(child_module_name);
ipc->send_message("menu_plus", "show window", "");
ipc->send_message("menu_plus", "show wiggle", "");//todo
}
show_wiggle_sent = true;
//*/
if (child_module_name != "" && child_module_path != "")
{
static bool first = true;
if (first && process_running(child_module_name + extension0))
{
kill_process(child_module_name + extension0);
while (process_running(child_module_name + extension0))
{
console_log("wait kill");
Sleep(1000);
}
}
first = false;
}
//*/
if (child_module_name != "" && child_module_path != "" && !process_running(child_module_name + extension0))
//
create_process(child_module_path, child_module_name + extension0);
I haven't uncommented these lines though I don't know if it's important or not but it doesn't seems to make any difference at running :
// imshow("image_preprocessed1", image_preprocessed1);
// setMouseCallback("image_preprocessed1", left_mouse_cb, NULL);
// waitKey(1);
// return false;
// ipc->send_message("menu_plus", "hide window", "");
I get this in console running C:\touch_plus_source_code\build\win_cursor_plus\win_cursor_plus.exe :
"message received open udp channel win_cursor_plus0
message sent: track_plus open udp channel 54452
bound to UDP port 54452"
but I can't get any same green win cursor as seen on v0.55b on Alexandru Bauer's computer : https://www.youtube.com/watch?v=ulFTmjiwmAA
Maybe it's a typically csharp issue on win_cursor_plus and win_cursor_plus_fallback.
Thanks in advance for maybe a new help from you... if you have a little time again for us...
I'm gonna contact Corey Manders to have his global feeling on Ractiv's ambitious (dead ?) project and on OSX port for existing code.
I would like to get also his scientific and technical point of view on gesture recognition and hand tracking with the touchplus device because part of the wheel seems to have already been invented, see : (https://github.com/nickgillian/grt), (https://github.com/OpenGP/htrack).
Best Regards,
Christian LERICHE
known as The Frog and also touchhope on Wassim Gharbi's website
The text was updated successfully, but these errors were encountered: