Открытое окно Python OpenCV поверх других приложений

При выполнении скрипта python OpenCV, содержащего: cv2.imshow(img) появившееся окно открывается за моим оконным окном. Это мягкое раздражение – есть ли способ заставить его первоначально открыть спереди / сверху?

Многие люди задавали вопросы ( здесь и здесь ) о принуждении к постоянному поведению, но это, я думаю, проще.

Платформа OS X и OpenCV 2.4.11

3 Solutions collect form web for “Открытое окно Python OpenCV поверх других приложений”

Откройте namedWindow перед imshow , например:

 cv2.namedWindow('ImageWindowName', cv2.WINDOW_NORMAL) cv2.imshow('ImageWindowName',img) cv2.waitKey(0) cv2.destroyAllWindows() 

Прокомментируйте, если это будет сделано иначе.

Я могу сделать то, что, как я думаю, вам нужно, добавив одну строку в следующий файл в дистрибутиве OpenCV:

 modules/highgui/src/window_cocoa.mm 

Он находится вокруг строки 568 и является единственной строкой после слова SETCHELL в коде ниже:

  [window setFrameTopLeftPoint:initContentRect.origin]; [window setFirstContent:YES]; [window setContentView:[[CVView alloc] init]]; [window setHasShadow:YES]; [window setAcceptsMouseMovedEvents:YES]; [window useOptimizedDrawing:YES]; [window setTitle:windowName]; [window makeKeyAndOrderFront:nil]; // SETCHELL - raise window to top of stacking order [window setLevel:CGWindowLevelForKey(kCGMaximumWindowLevelKey)]; [window setAutosize:(flags == CV_WINDOW_AUTOSIZE)]; [windows setValue:window forKey:windowName]; [localpool drain]; return [windows count]-1; } CV_IMPL int cvWaitKey (int maxWait) { 

Один из способов обойти это – установить все окна из OpenCV «frontmost» с помощью AppleScript.

 subprocess.call(["/usr/bin/osascript", "-e", 'tell app "Finder" to set frontmost of process "Python" to true']) 

Таким образом, все окна должны быть выведены на передний план.

  • Проблемы с Python, Macports и Buffer
  • Spark (pyspark) с трудностью вызова методов статистики на рабочем узле
  • Разрешение 2 версии Python в Mac OSX
  • В терминале mac - как я могу получить стрелки от stdin?
  • Python импортирует ошибку MySQLdb - Mac 10.6
  • OSX: ошибка при установке пакетов python
  • Невозможно выполнить pip virtualvv на Mac 10.9 Mavericks с заваренным питоном
  • Обработка \ r \ n vs \ n новых строк в python на Mac и Windows
  • Python - лучший язык программирования в мире.