2011-06-30 61 views
0

我正在爲mac osx編寫一個Cocoa應用程序。我試圖弄清楚如何確定將被相機捕獲的圖像的大小?我想知道將要捕捉的圖像的大小,以便我可以設置一個高寬比不會扭曲圖像的視圖。例如,如果我的視圖被定義爲640x360,並且我的相機捕獲640x480的圖像,則顯示的圖像看起來很短並且很胖。我還在圖像上顯示了一些其他圖層,我需要圖像大小才能正確縮放和定位圖層。相機圖像大小

我不會知道連接到運行時間的攝像頭的類型,所以我希望能夠詢問設備並獲取圖像大小等屬性。感謝您的幫助...

+0

你是通過IKPictureTaker或其他方法獲取圖片嗎? – zpasternack

+0

我在我的MacBook或外置USB攝像頭中使用了集成攝像頭。內部相機給我一個1280x720的圖像和外部相機是640x480。捕獲的圖像的大小似乎是正在使用的相機的固有屬性。在捕獲之前,我只需要知道圖像的大小,以便我可以操縱用來顯示它的視圖的大小。 –

+0

@Steve Oliver:你沒有回答他的問題。您使用什麼API或庫來執行捕獲? –

回答

0

當您在640x360而不是640x480或320x240中捕獲時,您正在改變圖像的寬高比。你正在做一些類似於調整大小的東西,使用整個圖像並使其大小不同。

如果你不想扭曲圖像,但只使用它的一部分,你需要做一個作物。某些硬件支持裁剪,其他硬件則不支持,您必須使用軟件進行裁剪。剪裁僅使用原始圖像的一部分。在你的情況下,你會丟棄最低的120行。

實施例(來自here):

crop example

藍色矩形是天然的,或者原始圖像和紅色是它的一個作物。