improved image sharpness menu

pull/6/head
Ahmet Inan 2015-02-25 11:29:03 +01:00
rodzic 4dda305a87
commit 6f096419c1
8 zmienionych plików z 48 dodań i 20 usunięć

Wyświetl plik

@ -160,8 +160,7 @@ public class Decoder {
void clear_image() { rsDecoder.invoke_reset_buffer(); }
void toggle_scaling() { image.intScale ^= true; }
void softer_image() { rsDecoder.invoke_incr_blur(); }
void sharper_image() { rsDecoder.invoke_decr_blur(); }
void adjust_blur(int blur) { rsDecoder.invoke_adjust_blur(blur); }
void toggle_debug() { rsDecoder.invoke_toggle_debug(); }
void toggle_auto() { rsDecoder.invoke_toggle_auto(); }
void enable_analyzer(boolean enable) { rsDecoder.invoke_enable_analyzer((enableAnalyzer = enable) ? 1 : 0); }

Wyświetl plik

@ -227,11 +227,26 @@ public class MainActivity extends Activity {
case R.id.action_clear_image:
decoder.clear_image();
return true;
case R.id.action_softer_image:
decoder.softer_image();
case R.id.action_sharpest_image:
decoder.adjust_blur(-3);
return true;
case R.id.action_sharper_image:
decoder.sharper_image();
decoder.adjust_blur(-2);
return true;
case R.id.action_sharp_image:
decoder.adjust_blur(-1);
return true;
case R.id.action_neutral_image:
decoder.adjust_blur(0);
return true;
case R.id.action_soft_image:
decoder.adjust_blur(1);
return true;
case R.id.action_softer_image:
decoder.adjust_blur(2);
return true;
case R.id.action_softest_image:
decoder.adjust_blur(3);
return true;
case R.id.action_toggle_scaling:
decoder.toggle_scaling();

Wyświetl plik

@ -27,8 +27,15 @@
android:icon="@android:drawable/ic_menu_close_clear_cancel"
android:showAsAction="ifRoom" />
<item android:id="@+id/action_softer_image" android:title="@string/action_softer_image" />
<item android:id="@+id/action_sharper_image" android:title="@string/action_sharper_image" />
<item android:title="@string/image_sharpness"><menu>
<item android:id="@+id/action_sharpest_image" android:title="@string/action_sharpest_image" />
<item android:id="@+id/action_sharper_image" android:title="@string/action_sharper_image" />
<item android:id="@+id/action_sharp_image" android:title="@string/action_sharp_image" />
<item android:id="@+id/action_neutral_image" android:title="@string/action_neutral_image" />
<item android:id="@+id/action_soft_image" android:title="@string/action_soft_image" />
<item android:id="@+id/action_softer_image" android:title="@string/action_softer_image" />
<item android:id="@+id/action_softest_image" android:title="@string/action_softest_image" />
</menu></item>
<item android:id="@+id/action_toggle_scaling" android:title="@string/action_toggle_scaling" />
<item android:id="@+id/action_toggle_debug" android:title="@string/action_toggle_debug" />

Wyświetl plik

@ -26,8 +26,14 @@
<string name="action_scottie2_mode">Scottie2 Modus</string>
<string name="action_scottieDX_mode">ScottieDX Modus</string>
<string name="action_wraaseSC2_180_mode">WraaseSC2 180 Modus</string>
<string name="action_softer_image">Weicheres Bild</string>
<string name="action_sharper_image">Schärferes Bild</string>
<string name="image_sharpness">Bildschärfe Anpassen</string>
<string name="action_sharpest_image">am schärfsten</string>
<string name="action_sharper_image">schärfer</string>
<string name="action_sharp_image">scharf</string>
<string name="action_neutral_image">neutral</string>
<string name="action_soft_image">weich</string>
<string name="action_softer_image">weicher</string>
<string name="action_softest_image">am weichsten</string>
<string name="action_toggle_scaling">Skalierung umschalten</string>
<string name="decoder_view">Dekodierer Ansicht</string>
<string name="spectrum_view">Spektrum Ansicht</string>

Wyświetl plik

@ -26,8 +26,14 @@
<string name="action_scottie2_mode">Scottie2 Mode</string>
<string name="action_scottieDX_mode">ScottieDX Mode</string>
<string name="action_wraaseSC2_180_mode">WraaseSC2 180 Mode</string>
<string name="action_softer_image">Softer Image</string>
<string name="action_sharper_image">Sharper Image</string>
<string name="image_sharpness">Image Sharpness</string>
<string name="action_sharpest_image">sharpest</string>
<string name="action_sharper_image">sharper</string>
<string name="action_sharp_image">sharp</string>
<string name="action_neutral_image">neutral</string>
<string name="action_soft_image">soft</string>
<string name="action_softer_image">softer</string>
<string name="action_softest_image">softest</string>
<string name="action_toggle_scaling">Toggle Scaling</string>
<string name="decoder_view">Decoder View</string>
<string name="spectrum_view">Spectrum View</string>

Wyświetl plik

@ -21,14 +21,9 @@ limitations under the License.
#include "state.rsh"
#include "blur_generated.rsh"
void incr_blur()
void adjust_blur(int blur)
{
user_blur = user_blur < 6 ? user_blur + 1 : user_blur;
}
void decr_blur()
{
user_blur = user_blur >= 0 ? user_blur - 1 : user_blur;
user_blur = clamp(blur, -3, 3);
}
#endif

Wyświetl plik

@ -5,7 +5,7 @@ static uchar value_blur(int pixel, int begin, int end)
int i = p & buffer_mask;
int weight_sum = 0;
int value_sum = 0;
switch (blur_power + user_blur) {
switch (max(0, blur_power + user_blur)) {
case 0:
if ((p-1) < begin || end <= (p+1) || (i-1) < 0 || buffer_length <= (i+1)) {
if (begin <= (p-1)) {

Wyświetl plik

@ -63,7 +63,7 @@ int main()
printf("\tint i = p & buffer_mask;\n");
printf("\tint weight_sum = 0;\n");
printf("\tint value_sum = 0;\n");
printf("\tswitch (blur_power + user_blur) {\n");
printf("\tswitch (max(0, blur_power + user_blur)) {\n");
int max_power = 6;
for (int i = 0; i <= max_power; ++i) {
printf("\tcase %d:\n", i);