Home > C++, Documentation > CCV – Things to do !

CCV – Things to do !

Initially I thought, roadmap will be a better word , but naah! This is just a post on what “may be” in CCV in future releases ! Also people who want to contribute into CCV code base and have no idea what they can do , these are some features that can be worked on ! Some of them are pretty easy, so can be nice place to start !

  • Multicam (up to 16 PS3 cameras supported by CLEye Driver)
  • WM_TOUCH messages along with TUIO messages
  • TUIO on multiple ports(done in CCV 1.4 final)
  • Debug mode improvements (say -p arguments prints number of blobs and so on. Right now only -d option is supported for logging )
  • Run directly as service. Once all parameters are set and saved , you don’t need any GUI !
  • Porting to Linux – Now it’s about time to port CCV to Linux and do cross platform development !
  • Object Tracking improvements by use of ROI.
  • GUI improvements – as suggested by Patrick.
  • Tracking performance improvements and ability to adjust the ccv settings in single steps(suggested by the_goat)
  • Improve fiducial tracking (may be using direct reactivision library instead of addon ?) (suggested by Rogier Mars)
  • un-Distortion filters in CCV (http://amitsarangi.wordpress.com/2010/09/02/ccv-1-4/#comment-874)

This is not all , this is just a list of what comes to my mind right now ! If you want to add/modify any feature, just let me know , and I will add it up !

I have tried some of these and got success in some (like- running as service,debug mode improvements, multiple port TUIO) but the code is not mature enough to be merged into the repo. So if any of you want to work on these features, you can ask me/anyone in dev team for help !

You think you are not the “code-guy” and still want to contribute ? You are always welcome to help in documentation ! CCV is nicely documented, also the code is written so that it is easy to follow ! But better is always good ;) !

Categories: C++, Documentation
  1. October 16, 2010 at 5:46 pm | #1

    hi amit… lots of ideas. most important ones: gui-improvements!

    - make ccv gui behave like normal programs… minimize, maximize, normal menus
    - save configs, save as…, open, basically just a real “File” menu
    - graphical improvements (make it look nice :) )
    - interaction design improvements:
    – better layout of all the components (especially since 1.4 the gui is really messed up
    – use standard os gui-widges (or improve the current ones… for example the sliders are really hard to control precisely, especially if you’re on a very high dpi-display)

    well there are more, these are just the ones that came to my mind immediately :) i could help with some of those, especially the IxD related stuff.

    thanks amit!

  2. October 16, 2010 at 8:22 pm | #2

    Hmm .. point noted. All GUI improvements ! May not be in near future though !

  3. Reini
    October 19, 2010 at 5:31 am | #3

    Hi!

    First of all, thanks for sharing all your work!

    I checked out the source from the GC SVN a few hours ago and built it in Visual Studio 2008 without errors. Afterwards I copy the ‘vc90.pdb’ and ‘cxcore110d.pdb’ into the bin directory.
    When executing CCV and enabling ‘TUIO UDP’ it does not send any TUIO messages when ‘Track Fingers’ is checked, although the blob outlines are shown in the source window and the blob are labeled with ID’s. Tracking and sending of ‘fiducials’ or ‘object’ works.

    Maybe you can help me out with this… ;)

    • October 19, 2010 at 5:34 am | #4

      Thanks for the feedback :-) , I will see whats the problem :-) ! if this is a problem , it will be solved soon =) !

      • Reini
        October 19, 2010 at 6:03 pm | #5

        Hi!

        I think I found it :) .

        TUIO.cpp: Inside the if(bFingers) statement the OSC message was created, but actually not sent. By adding these lines it should be fixed:

        b.addMessage( alive ); //add message to bundle
        b.addMessage( fseq ); //add message to bundle
        TUIOSocket.sendBundle( b ); //send bundle

        Regards :)
        Reini

  4. October 19, 2010 at 8:36 pm | #6

    Thanks Reini :-) ! I will add it up to the code !

  5. October 23, 2010 at 9:32 pm | #7

    Can not wait to see new version!! Great jobs!!

  6. Reini
    November 3, 2010 at 9:32 pm | #8

    Hi! Currently I’m messing around with those blob contact area values by sending them over the TUIO protocol.
    Strangely when looking at those blob angle values, they are jumping like crazy. They are sent in the ‘void TUIO::sendTUIO’ method by adding the argument ‘set.addFloatArg(blob->second.angle)’. You can also recognize these jumping values in the CCV GUI, but is there a way to make this property useful? Or am i just reading the wrong value?

    Thanks for your help!

  7. GWv
    November 23, 2010 at 11:07 pm | #9

    Hi Amit, first of all great job on making ccv1.4 available for OSX and adding fiducial support. Been playing around with it for a few days now.

    Though I run into a problem of which I’m curious whether it’s just me or the ccv program. Reactivision provides a very accurate and reliable way of tracking fiducials, yet I don’t seem to get the same results out of ccv. My aim is to create an interactive floor on which I can track individuals and also identify them (hence the fiducials) thus I need to get some distance between the fiducial and the camera. Reactivision provides +/- 2.5 meters of distance while ccv only about 1 m. Reason for choosing ccv though is because it makes life so much easier when it comes to calibration and combining blob + fiducial. You got an idea on how to enhance the results from ccv?

    Thanks for the help and keep up the good work, great job.

    • November 24, 2010 at 12:26 am | #10

      Hi,
      Well, Fiducial tracking depends upon somethings like camera resolution and processor speed. Some tips for increasing the performance would be to use fiducial miniset if you are not using the 180 fiducials (http://sourceforge.net/apps/phpbb/reactivision/viewtopic.php?f=2&t=137) , also use the maximum possible resolution possible. Max resolution = more clarity for the computer = better tracking = also slow tracking because of more number of pixels.

      • GWv
        November 24, 2010 at 2:18 pm | #11

        Thx Amit, especially for the fast reply, I will look into your suggestions.

        Currently using a high resolution webcam but haven’t tried a different fiducial set. I have one more question though, for reactivision I am able to change the set of fiducials, but for CCV I cannot find the XML file in which the fiducials are set. Do you have an idea on how to do that? Thus how to initialize CCV for the miniset fiducials?

  8. November 24, 2010 at 2:39 pm | #12

    well what calculation time are you getting with the high resolution and what fps ?

    Also to change the fiducial set, you have to replace the all.trees file in the data folder with your .trees file (rename it to all.trees of course).

    GWv :

    Thx Amit, especially for the fast reply, I will look into your suggestions.

    Currently using a high resolution webcam but haven’t tried a different fiducial set. I have one more question though, for reactivision I am able to change the set of fiducials, but for CCV I cannot find the XML file in which the fiducials are set. Do you have an idea on how to do that? Thus how to initialize CCV for the miniset fiducials?

    • GWv
      November 24, 2010 at 3:02 pm | #13

      Thx, got the other set fiducials up and running.

      The processing time is around 140ms with 5 fps (1440 x 900 resolution), while the same webcam tracks at 30fps with reactivision. In the config.xml the framerate is set at 30 so that should be ok. Is there something I’m missing to why the FPS is that low with ccv?

  9. November 25, 2010 at 11:26 am | #14

    Of course your processing time is too high ! You need to lower that , what cam do you use ? Did you try minimode ? (press Spacebar) , Try with a better processor. And the config.xml framerate always does not work , it will be better if you can tweak that to get the best possible fps for you !

  10. Freddy
    November 25, 2010 at 8:37 pm | #15

    Hi Amit,

    First thx for all the great work your doing with ccv. With your help we were already able to realise some smaller touchpanel projects. Right now we are trying to build a bigger multitouch surface, but for that we would need more than 2 ps3 cams, approximatly 4 or even 9. You seem to be working on this, perhaps you can say if this feature will be in the next version?

    Thx, Freddy

    • November 26, 2010 at 10:43 am | #16

      Yes, people are working on this. May be next version with CL Studio Live, Also CCV source can be modified to use more than 2 camera.

  11. GA
    January 4, 2011 at 11:16 pm | #17

    I noticed that one of the items in the ‘to do’ list about porting to Linux has been struck off.

    Is there a reason for this? Does it mean it’s already done? If so, could you please point me to it, if not is there an implementation hurdle?

    Thanks for your response.

    • January 4, 2011 at 11:18 pm | #18

      This has already been done – check http://nuicode.com/projects/ccv/files !

      • GA
        January 7, 2011 at 12:58 am | #19

        Thanks a lot, believe I’ve checked this already. At the time, was trying to see how to use Makefile only (instead of CodeBocks dependency) using the readme instructions you had. Turns out cbp2makefile is not available anymore? Is it possible to configure CCV in daemon mode without GUI?

        Thanks

  12. Mudit
    March 23, 2011 at 2:23 am | #20

    Dear Amit,

    Can you give me a link to CCV-GUI sourcecode. It’s urgent.

    Thanks,

    Mudit

    • April 1, 2011 at 8:46 pm | #21

      addons->ofxNCore->controls, gui design is in gui.h.

  13. April 1, 2011 at 12:59 pm | #22

    Hey,
    I have another suggestion for GUI improvements:
    Minimize to system tray

    And one more thing: does CCV send the blob sizes? If not please make it to do so, if yes it seems to be a problem in multitouchvista..

    I’m looking forward to the next release =D

    • April 1, 2011 at 8:48 pm | #23

      Yes , minimizing to a system tray will be really nice but we are looking for a step ahead and trying to make it as a service ;) . CCV does not send blob sizes ATM , may be after TUIO 2.0 integration it will :) . Watch out for future releases.

    • Reini
      April 1, 2011 at 10:05 pm | #24

      Hi!

      I made CCV send the TUIO /tuio/2Dblb profile. Check out my post at NUI Forum:
      http://nuigroup.com/forums/viewthread/10344/#63166

      • April 1, 2011 at 10:15 pm | #25

        Yes, this can do the trick for now ;) . I will integrate this to CCV when I get some time. Thanks :) .

  14. carlos
    August 5, 2011 at 9:11 am | #26

    Hey Anat When will the next ccv be released? In a month? in a week? :)

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.