5

I would like to make work the source code completion for Opencv 2.3 on Eclipse. How can i do that? Programs work fine but the completion [ctrl+space] appears: "No default proposals".

tshepang
  • 12,111
  • 21
  • 91
  • 136
Mauro
  • 237
  • 6
  • 13

2 Answers2

11

For C/C++:

  1. Use CDT in Eclipse
  2. In your project root directory, create the project's Makefiles:

    cmake -G 'Eclipse CDT4 - Unix Makefiles'

  3. Import the project using Eclipse->File->Import->General->Existing Projects

  4. Enjoy code completion using Ctrl-Space

For Python

  1. Install PyDev
  2. In Eclipse Navigate to... Window->Preferences->PyDev->Interpreters
  3. Configure PyDev, selecting the Python interpreter to be used
  4. Add /usr/local/lib/python2.7/dist-packages (or other valid path(s)) to the System Libraries
  5. Add cv (or cv2) to the Forced builtins
  6. Enjoy code using Ctrl-Space
JxAxMxIxN
  • 1,711
  • 1
  • 17
  • 20
TH.
  • 1,738
  • 1
  • 12
  • 15
  • Thank you so much for this! I've been looking for this for hours. However, I didn't need to add the dist-packages folder for some reason. – hjweide Jun 21 '12 at 18:55
  • 1
    @TH. I am new to Python and I don't understand the step number 3. I previously added _/usr/local/lib/python2.7/dist-packages_ to External Libs in my project but ctrl+space still doesn't work. – Booyaches Feb 28 '13 at 14:01
  • Python works and it doesn't... it completes when I use the cv2 or cv2.cv namespace, but if I have (for ex.) an array of images in a class that I then pass to a function and loop through, accessing the image variable doesn't know it's an image and the completion list is empty. Is this surmountable or just a general problem with dynamic typing? I added the forced built-in, but that didn't help and doesn't seem required. – Dave Jan 23 '14 at 16:37
3

If you are trying to use python's opencv I've found

from cv2.cv import *

in the file site-packages/cv.py, for this case I've had to use an import of:

import cv2.cv as cv

#instead of

import cv

to get the code completion to work.

David
  • 133
  • 3
  • 8