I have made a python program to acquire images from a JAI AP-3200T-PGE over GiGe, using the e harvester module and the GenTL producer file supplied with CVB.
This works well, except for the watermark present in the top left corner:
The camera suite license have been activated in the CVB license manager, and the required services seems to be running.
When acquiring images using the genicambrowser, the watermark does NOT appear.
Attempted fixes so far include:
- Re-installing CVB
- Installing CVB on another machine
- Registering a trial CVB foundation license
- disabling windows firewall
I’ve been in contact with Stemmer support but so far no solution has been found. Any suggestions on how to fix this issue would be very welcome.
can you try to call the GetLicenseCount() function from the CVCImg.dll? You should get a count of 1. Or maybe even easier, could you open the CVB LogGUI and then click:
- View → Configuration
- In configuration top right: Insert → Module: GEVTL, Debug
- Top right save the settings
- Hit the play button to start logging
- Start the harvester and get an image
- Stop logging and File → Save Log as JSON
Please upload the log/send it to me and/or send it to the support. They should have an open case and it should be easiest for us to do the communication over the support case. We can then post the solution.
Seing that you were sent here, I would continue publicly
Thanks for the log file! You can get camera communication errors from time to time. These can have various reasons but normally are not to worry about. Optimizing the NIC is always a good starting point
Regarding the licensing issue: It looks like there is a problem loading the image library and calling the function “GetLicenseInfo” as expected. The error Unable to open DriverDLL: Unable to load shared library can be ignored as it is a fallback for something similar but not directly related to this issue.
I think you are on windows, right? If so, please try this python script:
if sys.platform == "win32":
hllDll = ctypes.WinDLL(os.path.join(cvb.install_path(), "CVCImg.dll"))
hllApiProto = ctypes.WINFUNCTYPE(ctypes.c_int)
hllApi = hllApiProto (("GetLicenseInfo", hllDll))
print("Found license info " + str(hllApi()))
hllApiProto = ctypes.CDLL(os.path.join(cvb.install_path(), "lib", "libCVCImg.so"))
hllApi = hllApiProto.GetLicenseInfo()
print("Found license info " + str(hllApi))
Check the error you’ll get.
Either the CVCImg library cannot be loaded
→ Check where it is and maybe delete the file and call repair with the CVB installer
or the function GetLicenseInfo has a problem
→ maybe try to add the CVCImgDLO module (again as debug) to the LogGui and run the python script. If everything goes smoothly and you get 0 as return from GetLicenseInfo there is another problem detecting the correct license type, but that’s less probable.
If you are on Linux, check if the libCVCImg.so is found and linked correctly
ldconfig -p | grep libCVCImg.so
and make sure you installed CVB as user, not as admin using sudo as CVB is installed for the corresponding user and the harvester might be used as the other user.
Thanks again for the reply. I am indeed on Windows 10, and running the script you provided i get no error but the following output: “Found license info 8”.
I do not get the CVCImgDLO module as an option in LogGui:
Do I need to install an additional package?
In the meantime, I found a workaround for the watermark issue; if the raw buffer is decoded manually, the resulting image does not contain the watermark. I have done this to resolve an issue with acquiring images with higher bit depth than 8-bit for the camera im using: https://forum.commonvisionblox.com/t/acquiring-10-12-bit-rgb-images-from-a-jai-ap-3200t-pge/1430.
EDIT: i was wrong, the watermark persists in the manually decoded images.
You shoud get the log module when the module first ran. Maybe after opening the camera over the CVB Viewer or GenICam Browser.
Please try to add the CVB installation path to python with sys.path.append(). It could be that the DLL is not found because the path is not available with only the harvester used. The same could be accommplished by import cvb before the harvester.
You could also check if you get a watermark in the images when using CVB for acquisition. The watermarking should be the same.
If that does not work, I would ask you to get in contact with our support staff again. At this point it should be their responsibility to help you out. They should not refer you back to the forum. If they say otherwise feel free to refer to my post. Sorry for all the referrals.
import cvb on the line above harvester import did the trick!!! Thank you very much for the help.