I worked on this problem some time ago, my solution was to compress the image with
wavelet transform with an opportune coefficient that depends on captcha type that I choose with some expermients.
Then I saturate the compressed image from mean value to 0 and 1 in order to create a mask.
Next I multiply mask to the original image and I get the image without lines or noise. I post a picture example where I use also a derivative filter on the result but in reality you don't need it.
Your lines are a bit different but I think that you can start from this approach because your lines are more thin than text so wavelet compression can works but you have to improve it for your problem.
Finally your lines have different color and you can use also this information.