OpenCV 2 or 1

Chris Colbert sccolbert at gmail.com
Wed Nov 4 11:39:04 EST 2009


There are so many different ways that people can configure their
system. I think it fair for us to say, "if you want to do X you must
have Y, otherwise you have to do Z"



On Wed, Nov 4, 2009 at 5:38 PM, Chris Colbert <sccolbert at gmail.com> wrote:
> I would rather make a global module variable in the OpenCV files that
> a user can set to the path of their OpenCV 2.0 libs if they have more
> than one version installed.
>
> I see three situations:
> 1) a user wants to use scikits and doesnt have opencv
>  - so they follow the build instructions and build 2.0 - no problems
> 2) a user wants to use scikits and has opencv 1.x
>  - so they remove 1.x and build 2.0 - no problems
> 3) a user wants to use scikits and has opencv 1.x but CANT get rid of
> it because they are using it for other things.
>  - THIS user is a power user and shouldnt mind setting a variable in a
> file to point to their 2.0 libs.
>
> Cheers!
>
> Chris
>
> On Wed, Nov 4, 2009 at 4:28 PM, Ralf Gommers
> <ralf.gommers at googlemail.com> wrote:
>>
>>
>> 2009/11/4 Stéfan van der Walt <stefan at sun.ac.za>
>>>
>>> 2009/11/4 Chris Colbert <sccolbert at gmail.com>:
>>> >
>>> > Im all for a big glaring "OpenCV >= 2.0 required if you want to use
>>> > opencv extensions"
>>>
>>> This does look like the most painless way forward.  Chris, would you
>>> mind putting up a big notice in the OpenCV docs?
>>>
>>
>> A notice is good but does not really solve the issue right? If you need to
>> have 1.x on your computer for whatever reason, you get crashes anyway when
>> running the tests.
>>
>> I like Holger's option b:
>>
>>> b) Determine at run time if the user has OpenCV 1 installed and ABORT
>>> then in a pythonic fashion. I know of no portable way to pull this
>>> off; one could only check for relative positions of functions in the
>>> binaries or so. Nice code, nice distribution, very hard to implement.
>>
>> Not sure if this works, but could you use multiprocess to import opencv and
>> run a function known to fail in 1.x in a separate process. Then if it works,
>> write something to a file, and read that file. If you avoid any shared
>> objects this may work.
>>
>> Alternatively, locate the opencv header somehow, and parse it.
>>
>> Cheers,
>> Ralf
>>
>>
>



More information about the scikit-image mailing list