MatConverters.mm 949 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. //
  2. // MatConverters.mm
  3. //
  4. // Created by Masaya Tsuruta on 2020/10/08.
  5. //
  6. #import "MatConverters.h"
  7. #import <opencv2/imgcodecs/macosx.h>
  8. @implementation MatConverters
  9. +(CGImageRef)convertMatToCGImageRef:(Mat*)mat {
  10. return MatToCGImage(mat.nativeRef);
  11. }
  12. +(Mat*)convertCGImageRefToMat:(CGImageRef)image {
  13. return [MatConverters convertCGImageRefToMat:image alphaExist:NO];
  14. }
  15. +(Mat*)convertCGImageRefToMat:(CGImageRef)image alphaExist:(BOOL)alphaExist {
  16. Mat* mat = [Mat new];
  17. CGImageToMat(image, mat.nativeRef, (bool)alphaExist);
  18. return mat;
  19. }
  20. +(NSImage*)converMatToNSImage:(Mat*)mat {
  21. return MatToNSImage(mat.nativeRef);
  22. }
  23. +(Mat*)convertNSImageToMat:(NSImage*)image {
  24. return [MatConverters convertNSImageToMat:image alphaExist:NO];
  25. }
  26. +(Mat*)convertNSImageToMat:(NSImage*)image alphaExist:(BOOL)alphaExist {
  27. Mat* mat = [Mat new];
  28. NSImageToMat(image, mat.nativeRef, (bool)alphaExist);
  29. return mat;
  30. }
  31. @end