楼主: jaly50
跳转到指定楼层
上一主题 下一主题
收起左侧

Berkeley CS 61B Data Structures(in Java) Project1 加分+讨论帖

 
🔗
wystefan 2018-2-4 11:10:24 | 只看该作者
全局:
把part1和2交了,不知道能不能加分。3和4没写出来。



回复

使用道具 举报

🔗
AZ_Spark 2018-2-6 15:40:21 | 只看该作者
全局:
part 1234完成打卡:
part1:





还有不知道为啥那个sobel三个阶段的截图总是上传失败直接贴结果图了:


part234:








回复

使用道具 举报

🔗
greatlim 2018-2-11 23:43:14 | 只看该作者
全局:
感觉还有很多地方可以优化,继续加油~~

  1. /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home/bin/java "-javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=53566:/Applications/IntelliJ IDEA CE.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath /Users/Lim/@inbox/cs61b14/pj/pj1/out/production/pj1:/Users/Lim/@inbox/cs61b14/pj/pj1/jai_core.jar:/Users/Lim/@inbox/cs61b14/pj/pj1/jai_codec.jar PixImage
  2. Testing getWidth/getHeight on a 3x3 image.  Input image:
  3. 0 0 0|30 30 30|80 80 80|
  4. 10 10 10|120 120 120|250 250 250|
  5. 240 240 240|250 250 250|255 255 255|
  6. Good.
  7. Testing blurring on a 3x3 image.
  8. Good.
  9. Good.
  10. Good.
  11. Testing edge detection on a 3x3 image.
  12. Good.
  13. Testing getWidth/getHeight on a 2x3 image.  Input image:
  14. 0 0 0|0 0 0|
  15. 100 100 100|0 0 0|
  16. 100 100 100|100 100 100|
  17. Good.
  18. Testing blurring on a 2x3 image.
  19. Good.
  20. Testing edge detection on a 2x3 image.
  21. Good.

  22. Process finished with exit code 0
复制代码
  1. /Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home/bin/java "-javaagent:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar=51356:/Applications/IntelliJ IDEA CE.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath /Users/Lim/@inbox/cs61b14/pj/pj1/out/production/pj1:/Users/Lim/@inbox/cs61b14/pj/pj1/jai_core.jar:/Users/Lim/@inbox/cs61b14/pj/pj1/jai_codec.jar RunLengthEncoding
  2. Testing one-parameter RunLengthEncoding constuctor on a 3x3 image.  Input image:
  3. 0 0 0|1 1 1|2 2 2|
  4. 3 3 3|4 4 4|5 5 5|
  5. 6 6 6|7 7 7|8 8 8|
  6. Testing getWidth/getHeight on a 3x3 encoding.
  7. Good.
  8. Testing toPixImage() on a 3x3 encoding.
  9. Good.
  10. Testing setPixel() on a 3x3 encoding.
  11. Good.
  12. Testing setPixel() on a 3x3 encoding.
  13. Good.
  14. Testing setPixel() on a 3x3 encoding.
  15. Good.
  16. Testing setPixel() on a 3x3 encoding.
  17. Good.
  18. Testing setPixel() on a 3x3 encoding.
  19. Good.
  20. Testing setPixel() on a 3x3 encoding.
  21. Good.
  22. Testing setPixel() on a 3x3 encoding.
  23. Good.
  24. Testing one-parameter RunLengthEncoding constuctor on another 3x3 image.  Input image:
  25. 2 2 2|2 2 2|3 3 3|
  26. 3 3 3|4 4 4|4 4 4|
  27. 5 5 5|5 5 5|6 6 6|
  28. Testing getWidth/getHeight on a 3x3 encoding.
  29. Good.
  30. Testing toPixImage() on a 3x3 encoding.
  31. Good.
  32. Testing setPixel() on a 3x3 encoding.
  33. Good.
  34. Testing setPixel() on a 3x3 encoding.
  35. Good.
  36. Testing one-parameter RunLengthEncoding constuctor on a 5x2 image.  Input image:
  37. 0 0 0|1 1 1|2 2 2|3 3 3|4 4 4|
  38. 5 5 5|6 6 6|7 7 7|8 8 8|9 9 9|
  39. Testing getWidth/getHeight on a 5x2 encoding.
  40. Good.
  41. Testing toPixImage() on a 5x2 encoding.
  42. Good.
  43. Testing setPixel() on a 5x2 encoding.
  44. Good.
  45. Testing setPixel() on a 5x2 encoding.
  46. Good.
  47. Testing setPixel() on a 5x2 encoding.
  48. Good.
  49. Testing one-parameter RunLengthEncoding constuctor on a 3x2 image.  Input image:
  50. 0 0 0|1 1 1|2 2 2|
  51. 3 3 3|4 4 4|5 5 5|
  52. Testing getWidth/getHeight on a 3x2 encoding.
  53. Good.
  54. Testing toPixImage() on a 3x2 encoding.
  55. Good.
  56. Testing setPixel() on a 3x2 encoding.
  57. Good.
  58. Testing setPixel() on a 3x2 encoding.
  59. Good.
  60. Testing setPixel() on a 3x2 encoding.
  61. Good.

  62. Process finished with exit code 0
复制代码

回复

使用道具 举报

🔗
Jerry_37 2018-3-6 20:28:39 | 只看该作者
全局:
做的
06年的project

评分

参与人数 1学分 +1 收起 理由
Cap_13 + 1 虽然看不懂……哈哈哈。

查看全部评分

回复

使用道具 举报

🔗
ff12 2018-3-10 17:25:28 | 只看该作者
全局:
感想:
1, 题目一定要非常认真的看和用笔归纳。我由于审题不细致返工的工作量也不少。(x,y的顺序问题等、像素包括那些元素)
2,实在debug不出来的时候可以去看github参考,但是不要一开始就看。
(作业是2014年的。第一张图是part1的blur和sobel效果图。第二和第三张是test part2 +3 +4的结果)




回复

使用道具 举报

🔗
ff12 2018-3-11 10:17:41 | 只看该作者
全局:

上面发重复了,补上图3

求加大米呀~~



回复

使用道具 举报

🔗
shaonan 2018-3-20 19:47:53 | 只看该作者
全局:



在做的过程中一直有个问题困扰我,这个压缩算法是默认rgb三通道都是相同的? 现实中这种情况不太常见吧?所以这个算法只是针对灰度图像的?一直怀有这种想法导致我一开始第二问都没弄懂题目。。
回复

使用道具 举报

🔗
bhlsp 2018-4-8 14:55:04 | 只看该作者
全局:








交作业啦
回复

使用道具 举报

🔗
tkft 2018-4-12 20:28:31 | 只看该作者
全局:
终于做完了..
更多图片 小图 大图
组图打开中,请稍候......
回复

使用道具 举报

🔗
nyjahchill 2018-4-19 16:49:50 | 只看该作者
全局:



图1为part1的结果,图2-3为part234的结果
总共完成时间应该是4天左右,
第一个不是很难,第二个读题非常难受,半天都不明白,实际上写的时候是默认了RGB三种颜色出现的前后相同时出现的频率是一样的,然后写起来就好一些。
第三个问题不大,只是在toPixel()进行检测的时候有些小问题检测不出来。
第四个确实很难,难度都在于debug,需要考虑的情况很多,在debug时会发现新的情况和之前写过的比如break;忘了加类似的错误。总的来讲几个method有以下需要考虑的问题

4.13 上午
boxBlur():
numIterations每一此都需要一个新的PixImage,否则n次的结果也等于1次。
需要建立一个数组引用 引用的对象必须初始化,并且第一个要设为原PixImage,这样一共有n+1个引用,注意这一点。
toString()输出的顺序,外循环应该是Height,内循环是Width,不然看起来像做了转置一样,还以为是boxBlur出错,在boxBlur里面改等于南辕北辙。

Sobel()
这个有个自己的问题大家忽略,问题出在indiceY越界,函数中把indiceY = j - (currentHei-1)写成了indiceY = j - (currentWid-1)造成。

Blur()
需要两个jai,在文件夹里面,通过package里面的buildpath创建路径,这样消除了一直显示的error,方法来源于本帖子第四页的老哥,谢谢你。
然后注释了函数中大多数print,感觉没什么用,只有最后的blurFile和次数那个fireld留下来了。
在Blur主函数里面,本来使用的是args给启动Blur的blurFile方法传递参数,这里args不太会用我直接将其改为了文件名,这里有个小细节文件名一定要有.tiff的后缀。

Sobel()
主要问题与Blur相同。

SetPixel()
首先分为(x,y)在DListNode里靠前中间靠后三种情况,另外这里忽略了一点一定要考虑DListNode里面频率为1的情况,单独讨论又分为abc变acc,abc变aac,abc变adc;或者ab变bb,ab变ac;以及类似(这里a代表了只有一个频率的节点)。
当1减为0时,这种情况需要将原节点删除(其实更简单是方法是修改原节点)。
如果使用了RunIterator,在第一个节点删除的时候需要把RunIterator切换,因为RunIterator指向的head。
用toString()来debug很方便。
最后一个bug insert方法引用少指了一个出了问题。

写了很久,也是刚刚起步,有问题对解答和对题目都不明白的都欢迎大家交流。
代码不放了,实在有需要的可以参考 https://github.com/xuanyangece/CS61B.git 里面的pj1 branch。

最后希望加个学分感谢

评分

参与人数 1大米 +2 收起 理由
shendezhuti + 2 很有用的信息!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表