2012-04-05 78 views
8

客戶端消除紅眼我已經呈現在我的客戶的瀏覽器下面的HTML代碼:從圖像上使用jQuery

<div id="Div"> 
    <img src="myImage.jpg" id="myImage"/> 
</div> 

這種特殊的圖像是由用戶上傳,然後顯示在這裏。 我需要允許我的用戶從該圖像中刪除任何紅眼。我想這樣做沒有任何回發(我在後面使用CodeIgniter)。在JQuery(或純JavaScript)中是否有任何可用的庫?如果不是什麼可能是一個好方法?

+5

這是你試圖做的非常平凡的事情。 – ThiefMaster 2012-04-05 08:29:41

+3

+1。 :D – marue 2012-04-05 08:33:12

+0

:D。那麼我應該讓PHP執行處理並顯示結果嗎? – unni 2012-04-05 08:36:53

回答

3

有很多的事,去上去除紅眼

A.眼檢測

B.紅眼區域映射

C.填充顏色

發子D.

E.不透明

我的建議

如果不是一份工作的jQuery,甚至PHP不會消除紅眼有效

可能的解決方案

  1. 獲得一個jQuery區域選擇腳本,用戶可以選擇自己的紅色注視他們自己(有了這個,你將能夠得到該區域(X1,Y1,X2,Y2,高度,寬度)示例http://odyniec.net/projects/imgareaselect/

  2. 有一個簡單的顏色選擇器,他們可以選擇替換顏色?默認可以在PHP中使用exec的紅眼去除

  3. 你不能輸出圖像...

編輯1

是黑色

  • 發送請求imagemagick

    我可以幫你這個職位

    得到一個現成的命令行工具10

    http://www.fmwconcepts.com/imagemagick/index.php http://www.fmwconcepts.com/imagemagick/redeye/index.php

    基本概念

    A.創建輸入圖像的去色副本

    B.執行模糊floodfill創建一個掩模圖像

    C.複合原與使用掩模圖像的去飽和圖像

    D.應用形態接近投產,填補了鏡面孔面罩 ,然後創建一個差異化經營創造公正孔的新面具

    E.應用新的口罩,複合先前的結果,盡顯輕盈, 零原始圖像的飽和度版本

    樣本過程的

    convert -quiet -regard-warnings "$infile" +repage "$tmpA1" 
    convert $tmpA1 -modulate $light,$sat,100 $tmpA2 
    proc="" 
    for ((i=0; i<np; i++)); do 
    proc="$proc matte ${pairArray[i]} floodfill" 
    done 
    convert $tmpA5 -fuzz $fuzz% -fill none -draw "$proc" \ 
    -fill "rgba(255,255,255,1)" +opaque "rgba(0,0,0,0)" \ 
    -fill "rgba(0,0,0,1)" -opaque "rgba(0,0,0,0)" \ 
    -alpha off -negate $tmpA3 
    if [ "$dilate" = 0 ]; then 
    dilation="" 
    else 
    dilation="-morphology dilate disk:$dilate" 
    fi 
    convert $tmpA1 $tmpA2 $tmpA3 -compose over -composite $tmpA2 
    convert $tmpA3 \(+clone -morphology close disk:$rad $dilation \) \ 
    -compose difference -composite -auto-level \ 
    -negate -threshold 0 -negate $tmpA4 
    convert $tmpA2 \($tmpA1 -modulate 100,0,100 \) $tmpA4 \ 
    -compose over -composite $outfile 
    

    我希望這有助於

    感謝

    :)

  • +0

    非常感謝詳細的解釋。這真的有幫助。 – unni 2012-04-09 07:00:27

    +0

    歡迎您.... – Baba 2012-04-09 08:50:48